@versori/run 0.2.28 → 0.3.0-veta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (455) hide show
  1. package/esm/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.d.ts +12 -0
  2. package/esm/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.d.ts.map +1 -0
  3. package/esm/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.js +69 -0
  4. package/esm/deps/jsr.io/@std/cache/0.2.0/lru_cache.d.ts +112 -0
  5. package/esm/deps/jsr.io/@std/cache/0.2.0/lru_cache.d.ts.map +1 -0
  6. package/esm/deps/jsr.io/@std/cache/0.2.0/lru_cache.js +151 -0
  7. package/esm/deps/jsr.io/@std/cache/0.2.0/memoize.d.ts +111 -0
  8. package/esm/deps/jsr.io/@std/cache/0.2.0/memoize.d.ts.map +1 -0
  9. package/esm/deps/jsr.io/@std/cache/0.2.0/memoize.js +82 -0
  10. package/esm/deps/jsr.io/@std/cache/0.2.0/mod.d.ts +24 -0
  11. package/esm/deps/jsr.io/@std/cache/0.2.0/mod.d.ts.map +1 -0
  12. package/esm/deps/jsr.io/@std/cache/0.2.0/mod.js +25 -0
  13. package/esm/deps/jsr.io/@std/cache/0.2.0/ttl_cache.d.ts +129 -0
  14. package/esm/deps/jsr.io/@std/cache/0.2.0/ttl_cache.d.ts.map +1 -0
  15. package/esm/deps/jsr.io/@std/cache/0.2.0/ttl_cache.js +162 -0
  16. package/esm/src/connection/DirectConnectionFactory.d.ts +29 -0
  17. package/esm/src/connection/DirectConnectionFactory.d.ts.map +1 -0
  18. package/esm/src/connection/DirectConnectionFactory.js +82 -0
  19. package/esm/src/connection/DynamicFetchFactory.d.ts +30 -0
  20. package/esm/src/connection/DynamicFetchFactory.d.ts.map +1 -0
  21. package/esm/src/connection/DynamicFetchFactory.js +113 -0
  22. package/esm/src/connection/StaticFetchFactory.d.ts +11 -0
  23. package/esm/src/connection/StaticFetchFactory.d.ts.map +1 -0
  24. package/esm/src/connection/StaticFetchFactory.js +35 -0
  25. package/esm/src/connection/internal/CredentialHolder.d.ts +11 -0
  26. package/esm/src/connection/internal/CredentialHolder.d.ts.map +1 -0
  27. package/esm/src/connection/internal/CredentialHolder.js +66 -0
  28. package/esm/src/connection/internal/FetchBuilder.d.ts +15 -0
  29. package/esm/src/connection/internal/FetchBuilder.d.ts.map +1 -0
  30. package/esm/src/connection/internal/FetchBuilder.js +89 -0
  31. package/esm/src/connection/internal/HttpClientFactory.d.ts +14 -0
  32. package/esm/src/connection/internal/HttpClientFactory.d.ts.map +1 -0
  33. package/esm/src/connection/internal/HttpClientFactory.js +42 -0
  34. package/esm/src/connection/internal/InboundConnectionFactory.d.ts +19 -0
  35. package/esm/src/connection/internal/InboundConnectionFactory.d.ts.map +1 -0
  36. package/esm/src/connection/internal/InboundConnectionFactory.js +390 -0
  37. package/esm/src/connection/internal/OutboundConnectionFactory.d.ts +31 -0
  38. package/esm/src/connection/internal/OutboundConnectionFactory.d.ts.map +1 -0
  39. package/esm/src/connection/internal/OutboundConnectionFactory.js +447 -0
  40. package/esm/src/connection/types.d.ts +32 -0
  41. package/esm/src/connection/types.d.ts.map +1 -0
  42. package/esm/src/connection/types.js +1 -0
  43. package/esm/src/context/ActivationImpl.d.ts +18 -0
  44. package/esm/src/context/ActivationImpl.d.ts.map +1 -0
  45. package/esm/src/context/ActivationImpl.js +82 -0
  46. package/esm/src/context/Context.d.ts +5 -6
  47. package/esm/src/context/Context.d.ts.map +1 -1
  48. package/esm/src/context/Context.js +9 -16
  49. package/esm/src/context/ContextProvider.d.ts +7 -3
  50. package/esm/src/context/ContextProvider.d.ts.map +1 -1
  51. package/esm/src/context/ContextProvider.js +28 -10
  52. package/esm/src/dsl/http/default.d.ts.map +1 -1
  53. package/esm/src/dsl/http/default.js +3 -1
  54. package/esm/src/dsl/http/types.d.ts +9 -4
  55. package/esm/src/dsl/http/types.d.ts.map +1 -1
  56. package/esm/src/dsl/http/versori/configloader.d.ts.map +1 -1
  57. package/esm/src/dsl/http/versori/configloader.js +3 -1
  58. package/esm/src/dsl/http/versori/constants.d.ts.map +1 -1
  59. package/esm/src/dsl/http/versori/constants.js +1 -0
  60. package/esm/src/dsl/http/versori/contextcredentials.d.ts.map +1 -1
  61. package/esm/src/dsl/http/versori/platformapi.d.ts.map +1 -1
  62. package/esm/src/dsl/http/versori/proxyroundtripper.d.ts +5 -3
  63. package/esm/src/dsl/http/versori/proxyroundtripper.d.ts.map +1 -1
  64. package/esm/src/dsl/http/versori/proxyroundtripper.js +31 -8
  65. package/esm/src/dsl/http/versori/webhookmiddleware.d.ts +8 -5
  66. package/esm/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
  67. package/esm/src/dsl/http/versori/webhookmiddleware.js +106 -115
  68. package/esm/src/dsl/tasks/HttpTask.d.ts +7 -5
  69. package/esm/src/dsl/tasks/HttpTask.d.ts.map +1 -1
  70. package/esm/src/dsl/tasks/HttpTask.js +22 -22
  71. package/esm/src/internal/InternalAuth.d.ts +15 -0
  72. package/esm/src/internal/InternalAuth.d.ts.map +1 -0
  73. package/esm/src/internal/InternalAuth.js +90 -0
  74. package/esm/src/internal/cli.d.ts +2 -0
  75. package/esm/src/internal/cli.d.ts.map +1 -0
  76. package/esm/src/internal/cli.js +20 -0
  77. package/esm/src/internal/constants.d.ts +20 -0
  78. package/esm/src/internal/constants.d.ts.map +1 -0
  79. package/esm/src/internal/constants.js +24 -0
  80. package/esm/src/interpreter/durable/DurableInterpreter.d.ts +14 -5
  81. package/esm/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
  82. package/esm/src/interpreter/durable/DurableInterpreter.js +20 -18
  83. package/esm/src/interpreter/durable/ObservableCompiler.d.ts +6 -3
  84. package/esm/src/interpreter/durable/ObservableCompiler.d.ts.map +1 -1
  85. package/esm/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
  86. package/esm/src/interpreter/durable/compilers/durableworkflow.js +10 -1
  87. package/esm/src/interpreter/durable/compilers/http.d.ts.map +1 -1
  88. package/esm/src/interpreter/durable/compilers/http.js +26 -9
  89. package/esm/src/interpreter/durable/compilers/schedule.d.ts.map +1 -1
  90. package/esm/src/interpreter/durable/compilers/schedule.js +41 -18
  91. package/esm/src/interpreter/durable/compilers/webhook.d.ts.map +1 -1
  92. package/esm/src/interpreter/durable/compilers/webhook.js +30 -33
  93. package/esm/src/interpreter/memory/MemoryInterpreter.d.ts +4 -4
  94. package/esm/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
  95. package/esm/src/interpreter/memory/MemoryInterpreter.js +14 -23
  96. package/esm/src/interpreter/memory/ObservableCompiler.d.ts +6 -3
  97. package/esm/src/interpreter/memory/ObservableCompiler.d.ts.map +1 -1
  98. package/esm/src/interpreter/memory/compilers/http.d.ts.map +1 -1
  99. package/esm/src/interpreter/memory/compilers/http.js +26 -9
  100. package/esm/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
  101. package/esm/src/interpreter/memory/compilers/schedule.js +34 -18
  102. package/esm/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
  103. package/esm/src/interpreter/memory/compilers/webhook.js +31 -34
  104. package/esm/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
  105. package/esm/src/kv/nats/NatsKeyValueProvider.js +16 -0
  106. package/esm/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
  107. package/esm/src/kv/sdk/SDKKeyValueProvider.js +14 -0
  108. package/esm/src/services/credentials/credential-v1alpha1.d.ts +4 -0
  109. package/esm/src/services/credentials/credential-v1alpha1.d.ts.map +1 -0
  110. package/esm/src/services/credentials/credential-v1alpha1.js +3 -0
  111. package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts +119 -0
  112. package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts.map +1 -0
  113. package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.js +67 -0
  114. package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.d.ts +245 -0
  115. package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.d.ts.map +1 -0
  116. package/esm/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.js +44 -0
  117. package/esm/src/services/credentials/generated/versori/credential/oauth2/v1/token_pb.d.ts +38 -0
  118. package/esm/src/services/credentials/generated/versori/credential/oauth2/v1/token_pb.d.ts.map +1 -0
  119. package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/oauth2/v1/token_pb.js +1 -1
  120. package/esm/src/services/credentials/generated/versori/credential/oauth2/v1/token_service_pb.d.ts +471 -0
  121. package/esm/src/services/credentials/generated/versori/credential/oauth2/v1/token_service_pb.d.ts.map +1 -0
  122. package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/oauth2/v1/token_service_pb.js +1 -1
  123. package/esm/src/services/credentials/generated/versori/credential/tokens/v1/token_pb.d.ts +38 -0
  124. package/esm/src/services/credentials/generated/versori/credential/tokens/v1/token_pb.d.ts.map +1 -0
  125. package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/tokens/v1/token_pb.js +1 -1
  126. package/esm/src/services/credentials/generated/versori/credential/tokens/v1/token_service_pb.d.ts +128 -0
  127. package/esm/src/services/credentials/generated/versori/credential/tokens/v1/token_service_pb.d.ts.map +1 -0
  128. package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/tokens/v1/token_service_pb.js +1 -1
  129. package/esm/src/services/credentials/generated/versori/credential/v1alpha1/common_pb.d.ts +90 -0
  130. package/esm/src/services/credentials/generated/versori/credential/v1alpha1/common_pb.d.ts.map +1 -0
  131. package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/v1alpha1/common_pb.js +16 -6
  132. package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.d.ts +1468 -0
  133. package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.d.ts.map +1 -0
  134. package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.js +534 -0
  135. package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_service_pb.d.ts +390 -0
  136. package/esm/src/services/credentials/generated/versori/credential/v1alpha1/credential_service_pb.d.ts.map +1 -0
  137. package/esm/src/{dsl/http → services/credentials/generated}/versori/credential/v1alpha1/credential_service_pb.js +1 -1
  138. package/esm/src/services/credentials/isTokenValid.d.ts +3 -0
  139. package/esm/src/services/credentials/isTokenValid.d.ts.map +1 -0
  140. package/esm/src/services/credentials/isTokenValid.js +8 -0
  141. package/esm/src/services/credentials/mod.d.ts +5 -0
  142. package/esm/src/services/credentials/mod.d.ts.map +1 -0
  143. package/esm/src/services/credentials/mod.js +4 -0
  144. package/esm/src/services/credentials/oauth1-v1.d.ts +3 -0
  145. package/esm/src/services/credentials/oauth1-v1.d.ts.map +1 -0
  146. package/esm/src/services/credentials/oauth1-v1.js +2 -0
  147. package/esm/src/services/credentials/oauth2-v1.d.ts +3 -0
  148. package/esm/src/services/credentials/oauth2-v1.d.ts.map +1 -0
  149. package/esm/src/services/credentials/oauth2-v1.js +2 -0
  150. package/esm/src/services/credentials/tokens-v1.d.ts +3 -0
  151. package/esm/src/services/credentials/tokens-v1.d.ts.map +1 -0
  152. package/esm/src/services/credentials/tokens-v1.js +2 -0
  153. package/esm/src/services/platform/PlatformApi.d.ts +7 -0
  154. package/esm/src/services/platform/PlatformApi.d.ts.map +1 -0
  155. package/esm/src/services/platform/PlatformApi.js +25 -0
  156. package/esm/src/services/platform/generated/client/client.gen.d.ts +3 -0
  157. package/esm/src/services/platform/generated/client/client.gen.d.ts.map +1 -0
  158. package/esm/src/services/platform/generated/client/client.gen.js +176 -0
  159. package/esm/src/services/platform/generated/client/index.d.ts +8 -0
  160. package/esm/src/services/platform/generated/client/index.d.ts.map +1 -0
  161. package/esm/src/services/platform/generated/client/index.js +5 -0
  162. package/esm/src/services/platform/generated/client/types.gen.d.ts +125 -0
  163. package/esm/src/services/platform/generated/client/types.gen.d.ts.map +1 -0
  164. package/esm/src/services/platform/generated/client/types.gen.js +2 -0
  165. package/esm/src/services/platform/generated/client/utils.gen.d.ts +39 -0
  166. package/esm/src/services/platform/generated/client/utils.gen.d.ts.map +1 -0
  167. package/esm/src/services/platform/generated/client/utils.gen.js +234 -0
  168. package/esm/src/services/platform/generated/client.gen.d.ts +13 -0
  169. package/esm/src/services/platform/generated/client.gen.d.ts.map +1 -0
  170. package/esm/src/services/platform/generated/client.gen.js +5 -0
  171. package/esm/src/services/platform/generated/core/auth.gen.d.ts +19 -0
  172. package/esm/src/services/platform/generated/core/auth.gen.d.ts.map +1 -0
  173. package/esm/src/services/platform/generated/core/auth.gen.js +14 -0
  174. package/esm/src/services/platform/generated/core/bodySerializer.gen.d.ts +18 -0
  175. package/esm/src/services/platform/generated/core/bodySerializer.gen.d.ts.map +1 -0
  176. package/esm/src/services/platform/generated/core/bodySerializer.gen.js +57 -0
  177. package/esm/src/services/platform/generated/core/params.gen.d.ts +34 -0
  178. package/esm/src/services/platform/generated/core/params.gen.d.ts.map +1 -0
  179. package/esm/src/services/platform/generated/core/params.gen.js +88 -0
  180. package/esm/src/services/platform/generated/core/pathSerializer.gen.d.ts +34 -0
  181. package/esm/src/services/platform/generated/core/pathSerializer.gen.d.ts.map +1 -0
  182. package/esm/src/services/platform/generated/core/pathSerializer.gen.js +114 -0
  183. package/esm/src/services/platform/generated/core/serverSentEvents.gen.d.ts +60 -0
  184. package/esm/src/services/platform/generated/core/serverSentEvents.gen.d.ts.map +1 -0
  185. package/esm/src/services/platform/generated/core/serverSentEvents.gen.js +121 -0
  186. package/esm/src/services/platform/generated/core/types.gen.d.ts +79 -0
  187. package/esm/src/services/platform/generated/core/types.gen.d.ts.map +1 -0
  188. package/esm/src/services/platform/generated/core/types.gen.js +2 -0
  189. package/esm/src/services/platform/generated/core/utils.gen.d.ts +15 -0
  190. package/esm/src/services/platform/generated/core/utils.gen.d.ts.map +1 -0
  191. package/esm/src/services/platform/generated/core/utils.gen.js +69 -0
  192. package/esm/src/services/platform/generated/index.d.ts +3 -0
  193. package/esm/src/services/platform/generated/index.d.ts.map +1 -0
  194. package/esm/src/services/platform/generated/index.js +3 -0
  195. package/esm/src/services/platform/generated/sdk.gen.d.ts +494 -0
  196. package/esm/src/services/platform/generated/sdk.gen.d.ts.map +1 -0
  197. package/esm/src/services/platform/generated/sdk.gen.js +1908 -0
  198. package/esm/src/services/platform/generated/types.gen.d.ts +3798 -0
  199. package/esm/src/services/platform/generated/types.gen.d.ts.map +1 -0
  200. package/esm/src/services/platform/generated/types.gen.js +2 -0
  201. package/esm/src/services/platform/mod.d.ts +5 -0
  202. package/esm/src/services/platform/mod.d.ts.map +1 -0
  203. package/esm/src/services/platform/mod.js +2 -0
  204. package/package.json +3 -4
  205. package/script/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.d.ts +12 -0
  206. package/script/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.d.ts.map +1 -0
  207. package/script/deps/jsr.io/@std/cache/0.2.0/_serialize_arg_list.js +72 -0
  208. package/script/deps/jsr.io/@std/cache/0.2.0/lru_cache.d.ts +112 -0
  209. package/script/deps/jsr.io/@std/cache/0.2.0/lru_cache.d.ts.map +1 -0
  210. package/script/deps/jsr.io/@std/cache/0.2.0/lru_cache.js +155 -0
  211. package/script/deps/jsr.io/@std/cache/0.2.0/memoize.d.ts +111 -0
  212. package/script/deps/jsr.io/@std/cache/0.2.0/memoize.d.ts.map +1 -0
  213. package/script/deps/jsr.io/@std/cache/0.2.0/memoize.js +85 -0
  214. package/script/deps/jsr.io/@std/cache/0.2.0/mod.d.ts +24 -0
  215. package/script/deps/jsr.io/@std/cache/0.2.0/mod.d.ts.map +1 -0
  216. package/script/deps/jsr.io/@std/cache/0.2.0/mod.js +41 -0
  217. package/script/deps/jsr.io/@std/cache/0.2.0/ttl_cache.d.ts +129 -0
  218. package/script/deps/jsr.io/@std/cache/0.2.0/ttl_cache.d.ts.map +1 -0
  219. package/script/deps/jsr.io/@std/cache/0.2.0/ttl_cache.js +166 -0
  220. package/script/src/connection/DirectConnectionFactory.d.ts +29 -0
  221. package/script/src/connection/DirectConnectionFactory.d.ts.map +1 -0
  222. package/script/src/connection/DirectConnectionFactory.js +86 -0
  223. package/script/src/connection/DynamicFetchFactory.d.ts +30 -0
  224. package/script/src/connection/DynamicFetchFactory.d.ts.map +1 -0
  225. package/script/src/connection/DynamicFetchFactory.js +117 -0
  226. package/script/src/connection/StaticFetchFactory.d.ts +11 -0
  227. package/script/src/connection/StaticFetchFactory.d.ts.map +1 -0
  228. package/script/src/connection/StaticFetchFactory.js +39 -0
  229. package/script/src/connection/internal/CredentialHolder.d.ts +11 -0
  230. package/script/src/connection/internal/CredentialHolder.d.ts.map +1 -0
  231. package/script/src/connection/internal/CredentialHolder.js +71 -0
  232. package/script/src/connection/internal/FetchBuilder.d.ts +15 -0
  233. package/script/src/connection/internal/FetchBuilder.d.ts.map +1 -0
  234. package/script/src/connection/internal/FetchBuilder.js +93 -0
  235. package/script/src/connection/internal/HttpClientFactory.d.ts +14 -0
  236. package/script/src/connection/internal/HttpClientFactory.d.ts.map +1 -0
  237. package/script/src/connection/internal/HttpClientFactory.js +46 -0
  238. package/script/src/connection/internal/InboundConnectionFactory.d.ts +19 -0
  239. package/script/src/connection/internal/InboundConnectionFactory.d.ts.map +1 -0
  240. package/script/src/connection/internal/InboundConnectionFactory.js +394 -0
  241. package/script/src/connection/internal/OutboundConnectionFactory.d.ts +31 -0
  242. package/script/src/connection/internal/OutboundConnectionFactory.d.ts.map +1 -0
  243. package/script/src/connection/internal/OutboundConnectionFactory.js +454 -0
  244. package/script/src/connection/types.d.ts +32 -0
  245. package/script/src/connection/types.d.ts.map +1 -0
  246. package/script/src/connection/types.js +2 -0
  247. package/script/src/context/ActivationImpl.d.ts +18 -0
  248. package/script/src/context/ActivationImpl.d.ts.map +1 -0
  249. package/script/src/context/ActivationImpl.js +86 -0
  250. package/script/src/context/Context.d.ts +5 -6
  251. package/script/src/context/Context.d.ts.map +1 -1
  252. package/script/src/context/Context.js +9 -16
  253. package/script/src/context/ContextProvider.d.ts +7 -3
  254. package/script/src/context/ContextProvider.d.ts.map +1 -1
  255. package/script/src/context/ContextProvider.js +28 -10
  256. package/script/src/dsl/http/default.d.ts.map +1 -1
  257. package/script/src/dsl/http/default.js +3 -1
  258. package/script/src/dsl/http/types.d.ts +9 -4
  259. package/script/src/dsl/http/types.d.ts.map +1 -1
  260. package/script/src/dsl/http/versori/configloader.d.ts.map +1 -1
  261. package/script/src/dsl/http/versori/configloader.js +3 -1
  262. package/script/src/dsl/http/versori/constants.d.ts.map +1 -1
  263. package/script/src/dsl/http/versori/constants.js +1 -0
  264. package/script/src/dsl/http/versori/contextcredentials.d.ts.map +1 -1
  265. package/script/src/dsl/http/versori/platformapi.d.ts.map +1 -1
  266. package/script/src/dsl/http/versori/proxyroundtripper.d.ts +5 -3
  267. package/script/src/dsl/http/versori/proxyroundtripper.d.ts.map +1 -1
  268. package/script/src/dsl/http/versori/proxyroundtripper.js +31 -8
  269. package/script/src/dsl/http/versori/webhookmiddleware.d.ts +8 -5
  270. package/script/src/dsl/http/versori/webhookmiddleware.d.ts.map +1 -1
  271. package/script/src/dsl/http/versori/webhookmiddleware.js +106 -115
  272. package/script/src/dsl/tasks/HttpTask.d.ts +7 -5
  273. package/script/src/dsl/tasks/HttpTask.d.ts.map +1 -1
  274. package/script/src/dsl/tasks/HttpTask.js +22 -22
  275. package/script/src/internal/InternalAuth.d.ts +15 -0
  276. package/script/src/internal/InternalAuth.d.ts.map +1 -0
  277. package/script/src/internal/InternalAuth.js +94 -0
  278. package/script/src/internal/cli.d.ts +2 -0
  279. package/script/src/internal/cli.d.ts.map +1 -0
  280. package/script/src/internal/cli.js +23 -0
  281. package/script/src/internal/constants.d.ts +20 -0
  282. package/script/src/internal/constants.d.ts.map +1 -0
  283. package/script/src/internal/constants.js +27 -0
  284. package/script/src/interpreter/durable/DurableInterpreter.d.ts +14 -5
  285. package/script/src/interpreter/durable/DurableInterpreter.d.ts.map +1 -1
  286. package/script/src/interpreter/durable/DurableInterpreter.js +20 -18
  287. package/script/src/interpreter/durable/ObservableCompiler.d.ts +6 -3
  288. package/script/src/interpreter/durable/ObservableCompiler.d.ts.map +1 -1
  289. package/script/src/interpreter/durable/compilers/durableworkflow.d.ts.map +1 -1
  290. package/script/src/interpreter/durable/compilers/durableworkflow.js +10 -1
  291. package/script/src/interpreter/durable/compilers/http.d.ts.map +1 -1
  292. package/script/src/interpreter/durable/compilers/http.js +26 -9
  293. package/script/src/interpreter/durable/compilers/schedule.d.ts.map +1 -1
  294. package/script/src/interpreter/durable/compilers/schedule.js +41 -18
  295. package/script/src/interpreter/durable/compilers/webhook.d.ts.map +1 -1
  296. package/script/src/interpreter/durable/compilers/webhook.js +30 -33
  297. package/script/src/interpreter/memory/MemoryInterpreter.d.ts +4 -4
  298. package/script/src/interpreter/memory/MemoryInterpreter.d.ts.map +1 -1
  299. package/script/src/interpreter/memory/MemoryInterpreter.js +14 -23
  300. package/script/src/interpreter/memory/ObservableCompiler.d.ts +6 -3
  301. package/script/src/interpreter/memory/ObservableCompiler.d.ts.map +1 -1
  302. package/script/src/interpreter/memory/compilers/http.d.ts.map +1 -1
  303. package/script/src/interpreter/memory/compilers/http.js +26 -9
  304. package/script/src/interpreter/memory/compilers/schedule.d.ts.map +1 -1
  305. package/script/src/interpreter/memory/compilers/schedule.js +34 -18
  306. package/script/src/interpreter/memory/compilers/webhook.d.ts.map +1 -1
  307. package/script/src/interpreter/memory/compilers/webhook.js +31 -34
  308. package/script/src/kv/nats/NatsKeyValueProvider.d.ts.map +1 -1
  309. package/script/src/kv/nats/NatsKeyValueProvider.js +16 -0
  310. package/script/src/kv/sdk/SDKKeyValueProvider.d.ts.map +1 -1
  311. package/script/src/kv/sdk/SDKKeyValueProvider.js +14 -0
  312. package/script/src/services/credentials/credential-v1alpha1.d.ts +4 -0
  313. package/script/src/services/credentials/credential-v1alpha1.d.ts.map +1 -0
  314. package/script/src/services/credentials/credential-v1alpha1.js +19 -0
  315. package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts +119 -0
  316. package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts.map +1 -0
  317. package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_metadata_pb.js +70 -0
  318. package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.d.ts +245 -0
  319. package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.d.ts.map +1 -0
  320. package/script/src/services/credentials/generated/versori/credential/oauth1/v1/authorization_service_pb.js +47 -0
  321. package/script/src/services/credentials/generated/versori/credential/oauth2/v1/token_pb.d.ts +38 -0
  322. package/script/src/services/credentials/generated/versori/credential/oauth2/v1/token_pb.d.ts.map +1 -0
  323. package/script/src/{dsl/http → services/credentials/generated}/versori/credential/oauth2/v1/token_pb.js +1 -1
  324. package/script/src/services/credentials/generated/versori/credential/oauth2/v1/token_service_pb.d.ts +471 -0
  325. package/script/src/services/credentials/generated/versori/credential/oauth2/v1/token_service_pb.d.ts.map +1 -0
  326. package/script/src/{dsl/http → services/credentials/generated}/versori/credential/oauth2/v1/token_service_pb.js +1 -1
  327. package/script/src/services/credentials/generated/versori/credential/tokens/v1/token_pb.d.ts +38 -0
  328. package/script/src/services/credentials/generated/versori/credential/tokens/v1/token_pb.d.ts.map +1 -0
  329. package/script/src/{dsl/http → services/credentials/generated}/versori/credential/tokens/v1/token_pb.js +1 -1
  330. package/script/src/services/credentials/generated/versori/credential/tokens/v1/token_service_pb.d.ts +128 -0
  331. package/script/src/services/credentials/generated/versori/credential/tokens/v1/token_service_pb.d.ts.map +1 -0
  332. package/script/src/{dsl/http → services/credentials/generated}/versori/credential/tokens/v1/token_service_pb.js +1 -1
  333. package/script/src/services/credentials/generated/versori/credential/v1alpha1/common_pb.d.ts +90 -0
  334. package/script/src/services/credentials/generated/versori/credential/v1alpha1/common_pb.d.ts.map +1 -0
  335. package/script/src/{dsl/http → services/credentials/generated}/versori/credential/v1alpha1/common_pb.js +16 -6
  336. package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.d.ts +1468 -0
  337. package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.d.ts.map +1 -0
  338. package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_pb.js +538 -0
  339. package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_service_pb.d.ts +390 -0
  340. package/script/src/services/credentials/generated/versori/credential/v1alpha1/credential_service_pb.d.ts.map +1 -0
  341. package/script/src/{dsl/http → services/credentials/generated}/versori/credential/v1alpha1/credential_service_pb.js +1 -1
  342. package/script/src/services/credentials/isTokenValid.d.ts +3 -0
  343. package/script/src/services/credentials/isTokenValid.d.ts.map +1 -0
  344. package/script/src/services/credentials/isTokenValid.js +11 -0
  345. package/script/src/services/credentials/mod.d.ts +5 -0
  346. package/script/src/services/credentials/mod.d.ts.map +1 -0
  347. package/script/src/services/credentials/mod.js +30 -0
  348. package/script/src/services/credentials/oauth1-v1.d.ts +3 -0
  349. package/script/src/services/credentials/oauth1-v1.d.ts.map +1 -0
  350. package/script/src/services/credentials/oauth1-v1.js +18 -0
  351. package/script/src/services/credentials/oauth2-v1.d.ts +3 -0
  352. package/script/src/services/credentials/oauth2-v1.d.ts.map +1 -0
  353. package/script/src/services/credentials/oauth2-v1.js +18 -0
  354. package/script/src/services/credentials/tokens-v1.d.ts +3 -0
  355. package/script/src/services/credentials/tokens-v1.d.ts.map +1 -0
  356. package/script/src/services/credentials/tokens-v1.js +18 -0
  357. package/script/src/services/platform/PlatformApi.d.ts +7 -0
  358. package/script/src/services/platform/PlatformApi.d.ts.map +1 -0
  359. package/script/src/services/platform/PlatformApi.js +52 -0
  360. package/script/src/services/platform/generated/client/client.gen.d.ts +3 -0
  361. package/script/src/services/platform/generated/client/client.gen.d.ts.map +1 -0
  362. package/script/src/services/platform/generated/client/client.gen.js +180 -0
  363. package/script/src/services/platform/generated/client/index.d.ts +8 -0
  364. package/script/src/services/platform/generated/client/index.d.ts.map +1 -0
  365. package/script/src/services/platform/generated/client/index.js +15 -0
  366. package/script/src/services/platform/generated/client/types.gen.d.ts +125 -0
  367. package/script/src/services/platform/generated/client/types.gen.d.ts.map +1 -0
  368. package/script/src/services/platform/generated/client/types.gen.js +3 -0
  369. package/script/src/services/platform/generated/client/utils.gen.d.ts +39 -0
  370. package/script/src/services/platform/generated/client/utils.gen.d.ts.map +1 -0
  371. package/script/src/services/platform/generated/client/utils.gen.js +245 -0
  372. package/script/src/services/platform/generated/client.gen.d.ts +13 -0
  373. package/script/src/services/platform/generated/client.gen.d.ts.map +1 -0
  374. package/script/src/services/platform/generated/client.gen.js +8 -0
  375. package/script/src/services/platform/generated/core/auth.gen.d.ts +19 -0
  376. package/script/src/services/platform/generated/core/auth.gen.d.ts.map +1 -0
  377. package/script/src/services/platform/generated/core/auth.gen.js +18 -0
  378. package/script/src/services/platform/generated/core/bodySerializer.gen.d.ts +18 -0
  379. package/script/src/services/platform/generated/core/bodySerializer.gen.d.ts.map +1 -0
  380. package/script/src/services/platform/generated/core/bodySerializer.gen.js +60 -0
  381. package/script/src/services/platform/generated/core/params.gen.d.ts +34 -0
  382. package/script/src/services/platform/generated/core/params.gen.d.ts.map +1 -0
  383. package/script/src/services/platform/generated/core/params.gen.js +92 -0
  384. package/script/src/services/platform/generated/core/pathSerializer.gen.d.ts +34 -0
  385. package/script/src/services/platform/generated/core/pathSerializer.gen.d.ts.map +1 -0
  386. package/script/src/services/platform/generated/core/pathSerializer.gen.js +123 -0
  387. package/script/src/services/platform/generated/core/serverSentEvents.gen.d.ts +60 -0
  388. package/script/src/services/platform/generated/core/serverSentEvents.gen.d.ts.map +1 -0
  389. package/script/src/services/platform/generated/core/serverSentEvents.gen.js +125 -0
  390. package/script/src/services/platform/generated/core/types.gen.d.ts +79 -0
  391. package/script/src/services/platform/generated/core/types.gen.d.ts.map +1 -0
  392. package/script/src/services/platform/generated/core/types.gen.js +3 -0
  393. package/script/src/services/platform/generated/core/utils.gen.d.ts +15 -0
  394. package/script/src/services/platform/generated/core/utils.gen.d.ts.map +1 -0
  395. package/script/src/services/platform/generated/core/utils.gen.js +74 -0
  396. package/script/src/services/platform/generated/index.d.ts +3 -0
  397. package/script/src/services/platform/generated/index.d.ts.map +1 -0
  398. package/script/src/services/platform/generated/index.js +19 -0
  399. package/script/src/services/platform/generated/sdk.gen.d.ts +494 -0
  400. package/script/src/services/platform/generated/sdk.gen.d.ts.map +1 -0
  401. package/script/src/services/platform/generated/sdk.gen.js +1992 -0
  402. package/script/src/services/platform/generated/types.gen.d.ts +3798 -0
  403. package/script/src/services/platform/generated/types.gen.d.ts.map +1 -0
  404. package/script/src/services/platform/generated/types.gen.js +3 -0
  405. package/script/src/services/platform/mod.d.ts +5 -0
  406. package/script/src/services/platform/mod.d.ts.map +1 -0
  407. package/script/src/services/platform/mod.js +18 -0
  408. package/esm/src/dsl/http/versori/credential/client.d.ts +0 -13
  409. package/esm/src/dsl/http/versori/credential/client.d.ts.map +0 -1
  410. package/esm/src/dsl/http/versori/credential/client.js +0 -35
  411. package/esm/src/dsl/http/versori/credential/credentials.d.ts +0 -98
  412. package/esm/src/dsl/http/versori/credential/credentials.d.ts.map +0 -1
  413. package/esm/src/dsl/http/versori/credential/credentials.js +0 -40
  414. package/esm/src/dsl/http/versori/credential/mod.d.ts +0 -2
  415. package/esm/src/dsl/http/versori/credential/mod.d.ts.map +0 -1
  416. package/esm/src/dsl/http/versori/credential/mod.js +0 -1
  417. package/esm/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts +0 -13
  418. package/esm/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts.map +0 -1
  419. package/esm/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts +0 -102
  420. package/esm/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts.map +0 -1
  421. package/esm/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts +0 -13
  422. package/esm/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts.map +0 -1
  423. package/esm/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts +0 -46
  424. package/esm/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts.map +0 -1
  425. package/esm/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts +0 -40
  426. package/esm/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts.map +0 -1
  427. package/esm/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts +0 -129
  428. package/esm/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts.map +0 -1
  429. package/esm/src/dsl/http/versori/roundtripper.d.ts +0 -61
  430. package/esm/src/dsl/http/versori/roundtripper.d.ts.map +0 -1
  431. package/esm/src/dsl/http/versori/roundtripper.js +0 -967
  432. package/script/src/dsl/http/versori/credential/client.d.ts +0 -13
  433. package/script/src/dsl/http/versori/credential/client.d.ts.map +0 -1
  434. package/script/src/dsl/http/versori/credential/client.js +0 -39
  435. package/script/src/dsl/http/versori/credential/credentials.d.ts +0 -98
  436. package/script/src/dsl/http/versori/credential/credentials.d.ts.map +0 -1
  437. package/script/src/dsl/http/versori/credential/credentials.js +0 -46
  438. package/script/src/dsl/http/versori/credential/mod.d.ts +0 -2
  439. package/script/src/dsl/http/versori/credential/mod.d.ts.map +0 -1
  440. package/script/src/dsl/http/versori/credential/mod.js +0 -5
  441. package/script/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts +0 -13
  442. package/script/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts.map +0 -1
  443. package/script/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts +0 -102
  444. package/script/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts.map +0 -1
  445. package/script/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts +0 -13
  446. package/script/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts.map +0 -1
  447. package/script/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts +0 -46
  448. package/script/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts.map +0 -1
  449. package/script/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts +0 -40
  450. package/script/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts.map +0 -1
  451. package/script/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts +0 -129
  452. package/script/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts.map +0 -1
  453. package/script/src/dsl/http/versori/roundtripper.d.ts +0 -61
  454. package/script/src/dsl/http/versori/roundtripper.d.ts.map +0 -1
  455. package/script/src/dsl/http/versori/roundtripper.js +0 -974
@@ -0,0 +1,394 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExpressInboundConnectionFactory = void 0;
4
+ const mod_js_1 = require("../../services/credentials/mod.js");
5
+ const protobuf_1 = require("@bufbuild/protobuf");
6
+ const node_buffer_1 = require("node:buffer");
7
+ const node_crypto_1 = require("node:crypto");
8
+ const CredentialHolder_js_1 = require("./CredentialHolder.js");
9
+ const isTokenValid_js_1 = require("../../services/credentials/isTokenValid.js");
10
+ const mod_js_2 = require("../../../deps/jsr.io/@std/cache/0.2.0/mod.js");
11
+ class ExpressInboundConnectionFactory {
12
+ constructor(credentials, tokens, logger) {
13
+ Object.defineProperty(this, "credentials", {
14
+ enumerable: true,
15
+ configurable: true,
16
+ writable: true,
17
+ value: credentials
18
+ });
19
+ Object.defineProperty(this, "tokens", {
20
+ enumerable: true,
21
+ configurable: true,
22
+ writable: true,
23
+ value: tokens
24
+ });
25
+ Object.defineProperty(this, "logger", {
26
+ enumerable: true,
27
+ configurable: true,
28
+ writable: true,
29
+ value: logger
30
+ });
31
+ Object.defineProperty(this, "cache", {
32
+ enumerable: true,
33
+ configurable: true,
34
+ writable: true,
35
+ value: void 0
36
+ });
37
+ this.cache = new mod_js_2.LruCache(100);
38
+ }
39
+ handler(cnx) {
40
+ const cached = this.cache.get(cnx.id);
41
+ if (cached) {
42
+ return cached;
43
+ }
44
+ const handler = this.buildHandlers(cnx);
45
+ this.cache.set(cnx.id, handler);
46
+ return handler;
47
+ }
48
+ async buildHandlers(cnx) {
49
+ const handlers = [];
50
+ for (const [index, cnxCredential] of cnx.credentials.entries()) {
51
+ const handler = await this.buildHandler(cnxCredential, index, cnx);
52
+ if (handler) {
53
+ handlers.push(handler);
54
+ }
55
+ }
56
+ return composeHandlers(handlers);
57
+ }
58
+ buildHandler(cnxCredential, index, cnx) {
59
+ const asc = cnxCredential.authSchemeConfig;
60
+ const redactedCredential = cnxCredential.credential;
61
+ if (!asc || !redactedCredential) {
62
+ this.logger.warn('Connection credential is missing authSchemeConfig or credential', {
63
+ connectionId: cnx.id,
64
+ index,
65
+ asc,
66
+ redactedCredential,
67
+ });
68
+ return Promise.resolve(undefined);
69
+ }
70
+ switch (asc.type) {
71
+ case 'api-key':
72
+ if (!asc.apiKey) {
73
+ this.logger.warn('api-key auth has missing apiKey config', {
74
+ connectionId: cnx.id,
75
+ index,
76
+ });
77
+ return Promise.resolve(undefined);
78
+ }
79
+ return this.buildApiKeyHandler(asc.apiKey, redactedCredential);
80
+ case 'basic-auth':
81
+ return this.buildBasicAuthHandler(redactedCredential);
82
+ case 'hmac':
83
+ if (!asc.hmac) {
84
+ this.logger.warn('hmac auth has missing hmac config', {
85
+ connectionId: cnx.id,
86
+ index,
87
+ });
88
+ return Promise.resolve(undefined);
89
+ }
90
+ return this.buildHmacHandler(asc.hmac, redactedCredential);
91
+ default:
92
+ this.logger.warn('Unsupported inbound authSchemeConfig type', {
93
+ connectionId: cnx.id,
94
+ index,
95
+ type: asc.type,
96
+ });
97
+ return Promise.resolve(undefined);
98
+ }
99
+ }
100
+ async buildApiKeyHandler(cfg, redactedCredential) {
101
+ const initial = await this.tokens.getToken({
102
+ credentialId: redactedCredential.id,
103
+ forceRefresh: false,
104
+ });
105
+ if (!initial || !initial.token) {
106
+ this.logger.error('API key token not found for credential when building handler', {
107
+ credentialId: redactedCredential.id,
108
+ });
109
+ return (_req, res) => {
110
+ this.logger.warn('API key not configured before deployment, please redeploy your project', { credentialId: redactedCredential.id });
111
+ res.status(401).json({ error: 'Unauthorised' });
112
+ };
113
+ }
114
+ const holder = new CredentialHolder_js_1.CredentialHolder(initial.token, isTokenValid_js_1.isTokenValid, async () => {
115
+ const refreshed = await this.tokens.getToken({
116
+ credentialId: redactedCredential.id,
117
+ forceRefresh: false,
118
+ });
119
+ return refreshed.token;
120
+ });
121
+ let extractor;
122
+ switch (cfg.in) {
123
+ case 'header': {
124
+ const headerKey = cfg.name.toLowerCase();
125
+ extractor = (req) => {
126
+ const headerVal = req.headers[headerKey];
127
+ if (Array.isArray(headerVal)) {
128
+ return headerVal[0];
129
+ }
130
+ if (typeof headerVal === 'string') {
131
+ return headerVal;
132
+ }
133
+ return undefined;
134
+ };
135
+ break;
136
+ }
137
+ case 'query': {
138
+ const name = cfg.name;
139
+ extractor = (req) => {
140
+ const q = req.query?.[name];
141
+ if (typeof q === 'string') {
142
+ return q;
143
+ }
144
+ return undefined;
145
+ };
146
+ break;
147
+ }
148
+ case 'cookie': {
149
+ const name = cfg.name;
150
+ extractor = (req) => {
151
+ const c = req.cookies?.[name];
152
+ if (typeof c === 'string') {
153
+ return c;
154
+ }
155
+ return undefined;
156
+ };
157
+ break;
158
+ }
159
+ default:
160
+ throw new Error('Unsupported apiKey.in value: ' + cfg.in);
161
+ }
162
+ async function verify(apiKey) {
163
+ const expected = await holder.get();
164
+ if (!expected) {
165
+ return false;
166
+ }
167
+ let expectedKey = expected.tokenType
168
+ ? `${expected.tokenType} ${expected.accessToken}`
169
+ : expected.accessToken;
170
+ if (apiKey === expectedKey || apiKey === expected.accessToken) {
171
+ return true;
172
+ }
173
+ // TODO: Is this a DDOS if they just provide the wrong credential?
174
+ holder.refresh();
175
+ expectedKey = expected.tokenType
176
+ ? `${expected.tokenType} ${expected.accessToken}`
177
+ : expected.accessToken;
178
+ return apiKey === expectedKey || apiKey === expected.accessToken;
179
+ }
180
+ return async (req, res, next) => {
181
+ try {
182
+ const gotKey = extractor(req);
183
+ if (!gotKey) {
184
+ return res.status(401).json({ error: 'Unauthorised' });
185
+ }
186
+ if (await verify(gotKey)) {
187
+ return next();
188
+ }
189
+ return res.status(401).json({ error: 'Unauthorised' });
190
+ }
191
+ catch (err) {
192
+ this.logger.error('Error verifying API key', { err });
193
+ res.status(401).json({ error: 'Unauthorised' });
194
+ }
195
+ };
196
+ }
197
+ async buildBasicAuthHandler(redactedCredential) {
198
+ const response = await this.credentials.get({ id: redactedCredential.id });
199
+ if (!response || !response.credential) {
200
+ this.logger.error('BasicAuth credential not found when building handler', {
201
+ credentialId: redactedCredential.id,
202
+ });
203
+ return (_req, res) => {
204
+ this.logger.warn('BasicAuth not configured before deployment, please redeploy your project', {
205
+ credentialId: redactedCredential.id,
206
+ });
207
+ res.status(401).json({ error: 'Unauthorised' });
208
+ };
209
+ }
210
+ const holder = new CredentialHolder_js_1.CredentialHolder(response.credential, CredentialHolder_js_1.alwaysValid, async () => {
211
+ const refreshed = await this.credentials.get({ id: redactedCredential.id });
212
+ return refreshed.credential;
213
+ });
214
+ // Build parser once
215
+ const parseAuth = (req) => {
216
+ const headerVal = req.headers['authorization'];
217
+ const header = Array.isArray(headerVal) ? headerVal[0] : headerVal;
218
+ if (!header || typeof header !== 'string') {
219
+ return undefined;
220
+ }
221
+ const [scheme, encoded] = header.split(' ');
222
+ if (!scheme || scheme.toLowerCase() !== 'basic' || !encoded) {
223
+ return undefined;
224
+ }
225
+ let decoded = '';
226
+ try {
227
+ decoded = node_buffer_1.Buffer.from(encoded, 'base64').toString('utf8');
228
+ }
229
+ catch (err) {
230
+ this.logger.warn('Error decoding BasicAuth header', { encoded, error: err });
231
+ return undefined;
232
+ }
233
+ const sep = decoded.indexOf(':');
234
+ if (sep === -1) {
235
+ return undefined;
236
+ }
237
+ return { username: decoded.slice(0, sep), password: decoded.slice(sep + 1) };
238
+ };
239
+ return async (req, res, next) => {
240
+ try {
241
+ const parsed = parseAuth(req);
242
+ if (!parsed) {
243
+ return res.status(401).json({ error: 'Unauthorised' });
244
+ }
245
+ const c1 = await holder.get();
246
+ const data1 = (0, protobuf_1.create)(mod_js_1.credentialv1alpha1.CredentialDataBasicAuthSchema, c1.data);
247
+ if (parsed.username === data1.username && parsed.password === data1.password) {
248
+ return next();
249
+ }
250
+ const c2 = await holder.get(true);
251
+ const data2 = (0, protobuf_1.create)(mod_js_1.credentialv1alpha1.CredentialDataBasicAuthSchema, c2.data);
252
+ if (parsed.username === data2.username && parsed.password === data2.password) {
253
+ return next();
254
+ }
255
+ return res.status(401).json({ error: 'Unauthorised' });
256
+ }
257
+ catch (err) {
258
+ this.logger.error('Error verifying BasicAuth', { err });
259
+ res.status(401).json({ error: 'Unauthorised' });
260
+ }
261
+ };
262
+ }
263
+ async buildHmacHandler(cfg, redactedCredential) {
264
+ const response = await this.credentials.get({ id: redactedCredential.id });
265
+ if (!response || !response.credential) {
266
+ this.logger.error('HMAC credential not found', { credentialId: redactedCredential.id });
267
+ return (_req, res) => {
268
+ res.status(401).json({ error: 'Unauthorised' });
269
+ };
270
+ }
271
+ const holder = new CredentialHolder_js_1.CredentialHolder(response.credential, CredentialHolder_js_1.alwaysValid, async () => {
272
+ const refreshed = await this.credentials.get({ id: redactedCredential.id });
273
+ return refreshed.credential;
274
+ });
275
+ let extractor;
276
+ switch (cfg.in) {
277
+ case 'query': {
278
+ const name = cfg.name;
279
+ extractor = (req) => {
280
+ const q = req.query?.[name];
281
+ if (typeof q === 'string') {
282
+ return q;
283
+ }
284
+ return undefined;
285
+ };
286
+ break;
287
+ }
288
+ case 'header': {
289
+ const headerKey = cfg.name.toLowerCase();
290
+ extractor = (req) => {
291
+ const hv = req.headers[headerKey];
292
+ if (Array.isArray(hv)) {
293
+ return hv[0];
294
+ }
295
+ if (typeof hv === 'string') {
296
+ return hv;
297
+ }
298
+ return undefined;
299
+ };
300
+ break;
301
+ }
302
+ case 'cookie': {
303
+ const name = cfg.name;
304
+ extractor = (req) => {
305
+ const c = req.cookies?.[name];
306
+ if (typeof c === 'string') {
307
+ return c;
308
+ }
309
+ return undefined;
310
+ };
311
+ break;
312
+ }
313
+ default:
314
+ throw new Error('Unsupported hmac.in value: ' + cfg.in);
315
+ }
316
+ const logger = this.logger;
317
+ async function computeDigest(req) {
318
+ const cred = await holder.get();
319
+ const raw = (0, protobuf_1.create)(mod_js_1.credentialv1alpha1.CredentialDataRawSchema, cred.data);
320
+ const secret = node_buffer_1.Buffer.from(raw.raw).toString('utf8');
321
+ const hmac = (0, node_crypto_1.createHmac)(cfg.algorithm, secret);
322
+ for (const input of cfg.digestInputs) {
323
+ switch (input) {
324
+ case 'body': {
325
+ if (typeof req.rawBody === 'undefined') {
326
+ const { body: _body, ...rest } = req;
327
+ // NOTE: address this in future, at the moment only the JSON body-parser is populating the
328
+ // rawBody property, so this should only happen if the user is not using JSON.
329
+ logger.warn('request.rawBody missing from request, HMAC signature is likely going to fail, this can happen if the payload is not application/json', { req: { ...rest, body: '**redacted**' } });
330
+ return '';
331
+ }
332
+ hmac.update(req.rawBody);
333
+ break;
334
+ }
335
+ case 'url':
336
+ hmac.update(req.originalUrl ?? req.url);
337
+ break;
338
+ default:
339
+ break;
340
+ }
341
+ }
342
+ return hmac.digest(cfg.encoding);
343
+ }
344
+ return async (req, res, next) => {
345
+ try {
346
+ const provided = extractor(req);
347
+ if (!provided) {
348
+ return res.status(401).json({ error: 'Unauthorised' });
349
+ }
350
+ const digest1 = await computeDigest(req);
351
+ if (provided === digest1) {
352
+ return next();
353
+ }
354
+ // TODO: Is this a DDOS if they just provide the wrong credential?
355
+ holder.refresh();
356
+ const digest2 = await computeDigest(req);
357
+ if (provided === digest2) {
358
+ return next();
359
+ }
360
+ return res.status(401).json({ error: 'Unauthorised' });
361
+ }
362
+ catch (err) {
363
+ this.logger.error('Error verifying HMAC', { err });
364
+ res.status(401).json({ error: 'Unauthorised' });
365
+ }
366
+ };
367
+ }
368
+ }
369
+ exports.ExpressInboundConnectionFactory = ExpressInboundConnectionFactory;
370
+ function composeHandlers(handlers) {
371
+ return (req, res, next) => {
372
+ let index = -1;
373
+ const dispatch = (i, err) => {
374
+ if (err) {
375
+ return next(err);
376
+ }
377
+ if (i <= index) {
378
+ return next(new Error('next() called multiple times'));
379
+ }
380
+ index = i;
381
+ if (i === handlers.length) {
382
+ return next();
383
+ }
384
+ const handler = handlers[i];
385
+ try {
386
+ handler(req, res, (err2) => dispatch(i + 1, err2));
387
+ }
388
+ catch (e) {
389
+ next(e);
390
+ }
391
+ };
392
+ dispatch(0);
393
+ };
394
+ }
@@ -0,0 +1,31 @@
1
+ import { Client } from '@connectrpc/connect';
2
+ import { Logger } from '../../mod.js';
3
+ import { credentialv1alpha1, tokensv1, oauth1v1 } from '../../services/credentials/mod.js';
4
+ import { Connection } from '../../services/platform/mod.js';
5
+ import { FetchLike } from '../types.js';
6
+ import { HttpClientFactory } from './HttpClientFactory.js';
7
+ export declare class OutboundConnectionFactory {
8
+ private readonly httpClientFactory;
9
+ private readonly credentials;
10
+ private readonly tokens;
11
+ private readonly oauth1;
12
+ private readonly logger;
13
+ private readonly cache;
14
+ constructor(httpClientFactory: HttpClientFactory, credentials: Client<typeof credentialv1alpha1.CredentialService>, tokens: Client<typeof tokensv1.TokenService>, oauth1: Client<typeof oauth1v1.AuthorizationService>, logger: Logger);
15
+ fetcher(cnx: Connection): Promise<FetchLike>;
16
+ private buildFetcher;
17
+ private buildMiddleware;
18
+ private buildCertificateMiddleware;
19
+ private buildApiKeyMiddleware;
20
+ private buildApiKeyHeaderMiddleware;
21
+ private buildApiKeyQueryMiddleware;
22
+ private buildApiKeyCookieMiddleware;
23
+ private buildBasicAuthMiddleware;
24
+ private buildOAuth1Middleware;
25
+ private buildBasicAuthHeaderMiddleware;
26
+ private buildOAuth1HeaderMiddleware;
27
+ private buildJwtBearerMiddleware;
28
+ private buildOAuth2Middleware;
29
+ private buildAuthorizationHeaderMiddleware;
30
+ }
31
+ //# sourceMappingURL=OutboundConnectionFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OutboundConnectionFactory.d.ts","sourceRoot":"","sources":["../../../../src/src/connection/internal/OutboundConnectionFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC3F,OAAO,EAGH,UAAU,EAGb,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,SAAS,EAAsB,MAAM,aAAa,CAAC;AAG5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAI3D,qBAAa,yBAAyB;IAI9B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAP3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;gBAGxC,iBAAiB,EAAE,iBAAiB,EACpC,WAAW,EAAE,MAAM,CAAC,OAAO,kBAAkB,CAAC,iBAAiB,CAAC,EAChE,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC,EAC5C,MAAM,EAAE,MAAM,CAAC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,EACpD,MAAM,EAAE,MAAM;IAKnC,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;YAkB9B,YAAY;IAmB1B,OAAO,CAAC,eAAe;YAiDT,0BAA0B;YAwB1B,qBAAqB;IA4DnC,OAAO,CAAC,2BAA2B;IAuBnC,OAAO,CAAC,0BAA0B;IAkDlC,OAAO,CAAC,2BAA2B;YA0BrB,wBAAwB;YAkCxB,qBAAqB;IAiCnC,OAAO,CAAC,8BAA8B;IAuBtC,OAAO,CAAC,2BAA2B;YA2ErB,wBAAwB;YAkCxB,qBAAqB;IA6CnC,OAAO,CAAC,kCAAkC;CAyB7C"}