@versori/run 0.2.23 → 0.2.26

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 (294) hide show
  1. package/esm/src/context/Context.d.ts.map +1 -1
  2. package/esm/src/context/Context.js +1 -0
  3. package/esm/src/dsl/http/versori/contextcredentials.d.ts +2 -0
  4. package/esm/src/dsl/http/versori/contextcredentials.d.ts.map +1 -1
  5. package/esm/src/dsl/http/versori/{credentials → credential}/client.d.ts +3 -0
  6. package/esm/src/dsl/http/versori/credential/client.d.ts.map +1 -0
  7. package/esm/src/dsl/http/versori/{credentials → credential}/client.js +11 -1
  8. package/{script/src/dsl/http/versori/credentials → esm/src/dsl/http/versori/credential}/credentials.d.ts +21 -4
  9. package/esm/src/dsl/http/versori/credential/credentials.d.ts.map +1 -0
  10. package/esm/src/dsl/http/versori/{credentials → credential}/credentials.js +8 -0
  11. package/esm/src/dsl/http/versori/credential/mod.d.ts.map +1 -0
  12. package/esm/src/dsl/http/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts +40 -0
  13. package/esm/src/dsl/http/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts.map +1 -0
  14. package/esm/src/dsl/http/versori/credential/oauth1/v1/authorization_metadata_pb.js +35 -0
  15. package/esm/src/dsl/http/versori/credential/oauth1/v1/authorization_service_pb.d.ts +57 -0
  16. package/esm/src/dsl/http/versori/credential/oauth1/v1/authorization_service_pb.d.ts.map +1 -0
  17. package/esm/src/dsl/http/versori/credential/oauth1/v1/authorization_service_pb.js +44 -0
  18. package/esm/src/dsl/http/versori/{credentials → credential}/oauth2/v1/token_pb.d.ts +4 -1
  19. package/esm/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts.map +1 -0
  20. package/esm/src/dsl/http/versori/{credentials → credential}/oauth2/v1/token_pb.js +3 -3
  21. package/esm/src/dsl/http/versori/{credentials → credential}/oauth2/v1/token_service_pb.d.ts +45 -12
  22. package/esm/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts.map +1 -0
  23. package/esm/src/dsl/http/versori/{credentials → credential}/oauth2/v1/token_service_pb.js +3 -4
  24. package/esm/src/dsl/http/versori/{credentials → credential}/tokens/v1/token_pb.d.ts +4 -1
  25. package/esm/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts.map +1 -0
  26. package/esm/src/dsl/http/versori/{credentials → credential}/tokens/v1/token_pb.js +3 -3
  27. package/{script/src/dsl/http/versori/credentials → esm/src/dsl/http/versori/credential}/tokens/v1/token_service_pb.d.ts +17 -5
  28. package/esm/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts.map +1 -0
  29. package/esm/src/dsl/http/versori/{credentials → credential}/tokens/v1/token_service_pb.js +3 -3
  30. package/{script/src/dsl/http/versori/credentials → esm/src/dsl/http/versori/credential}/v1alpha1/common_pb.d.ts +13 -4
  31. package/esm/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts.map +1 -0
  32. package/esm/src/dsl/http/versori/{credentials → credential}/v1alpha1/common_pb.js +3 -3
  33. package/esm/src/dsl/http/versori/credential/v1alpha1/credential_pb.d.ts +364 -0
  34. package/esm/src/dsl/http/versori/credential/v1alpha1/credential_pb.d.ts.map +1 -0
  35. package/esm/src/dsl/http/versori/credential/v1alpha1/credential_pb.js +248 -0
  36. package/{script/src/dsl/http/versori/credentials → esm/src/dsl/http/versori/credential}/v1alpha1/credential_service_pb.d.ts +61 -16
  37. package/esm/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts.map +1 -0
  38. package/{script/src/dsl/http/versori/credentials → esm/src/dsl/http/versori/credential}/v1alpha1/credential_service_pb.js +22 -63
  39. package/esm/src/dsl/http/versori/kvapi/index.d.ts +41 -0
  40. package/esm/src/dsl/http/versori/kvapi/index.d.ts.map +1 -0
  41. package/esm/src/dsl/http/versori/kvapi/index.js +11 -0
  42. package/esm/src/dsl/http/versori/kvapi/models/BatchDeleteKVResponse.d.ts +4 -0
  43. package/esm/src/dsl/http/versori/kvapi/models/BatchDeleteKVResponse.d.ts.map +1 -0
  44. package/esm/src/dsl/http/versori/kvapi/models/BatchDeleteKVResponse.js +1 -0
  45. package/esm/src/dsl/http/versori/kvapi/models/BatchEntries.d.ts +3 -0
  46. package/esm/src/dsl/http/versori/kvapi/models/BatchEntries.d.ts.map +1 -0
  47. package/esm/src/dsl/http/versori/kvapi/models/BatchEntries.js +1 -0
  48. package/esm/src/dsl/http/versori/kvapi/models/BatchEntry.d.ts +10 -0
  49. package/esm/src/dsl/http/versori/kvapi/models/BatchEntry.d.ts.map +1 -0
  50. package/esm/src/dsl/http/versori/kvapi/models/BatchEntry.js +1 -0
  51. package/esm/src/dsl/http/versori/kvapi/models/BatchGetKVResponse.d.ts +5 -0
  52. package/esm/src/dsl/http/versori/kvapi/models/BatchGetKVResponse.d.ts.map +1 -0
  53. package/esm/src/dsl/http/versori/kvapi/models/BatchGetKVResponse.js +1 -0
  54. package/esm/src/dsl/http/versori/kvapi/models/BatchSetKVRequest.d.ts +5 -0
  55. package/esm/src/dsl/http/versori/kvapi/models/BatchSetKVRequest.d.ts.map +1 -0
  56. package/esm/src/dsl/http/versori/kvapi/models/BatchSetKVRequest.js +1 -0
  57. package/esm/src/dsl/http/versori/kvapi/models/BatchSetKVResponse.d.ts +3 -0
  58. package/esm/src/dsl/http/versori/kvapi/models/BatchSetKVResponse.d.ts.map +1 -0
  59. package/esm/src/dsl/http/versori/kvapi/models/BatchSetKVResponse.js +1 -0
  60. package/esm/src/dsl/http/versori/kvapi/models/CountKVRequest.d.ts +5 -0
  61. package/esm/src/dsl/http/versori/kvapi/models/CountKVRequest.d.ts.map +1 -0
  62. package/esm/src/dsl/http/versori/kvapi/models/CountKVRequest.js +1 -0
  63. package/esm/src/dsl/http/versori/kvapi/models/CountKVResponse.d.ts +4 -0
  64. package/esm/src/dsl/http/versori/kvapi/models/CountKVResponse.d.ts.map +1 -0
  65. package/esm/src/dsl/http/versori/kvapi/models/CountKVResponse.js +1 -0
  66. package/esm/src/dsl/http/versori/kvapi/models/CountSelector.d.ts +4 -0
  67. package/esm/src/dsl/http/versori/kvapi/models/CountSelector.d.ts.map +1 -0
  68. package/esm/src/dsl/http/versori/kvapi/models/CountSelector.js +1 -0
  69. package/esm/src/dsl/http/versori/kvapi/models/Error.d.ts +14 -0
  70. package/esm/src/dsl/http/versori/kvapi/models/Error.d.ts.map +1 -0
  71. package/esm/src/dsl/http/versori/kvapi/models/Error.js +1 -0
  72. package/esm/src/dsl/http/versori/kvapi/models/ErrorField.d.ts +16 -0
  73. package/esm/src/dsl/http/versori/kvapi/models/ErrorField.d.ts.map +1 -0
  74. package/esm/src/dsl/http/versori/kvapi/models/ErrorField.js +1 -0
  75. package/esm/src/dsl/http/versori/kvapi/models/GetOptions.d.ts +7 -0
  76. package/esm/src/dsl/http/versori/kvapi/models/GetOptions.d.ts.map +1 -0
  77. package/esm/src/dsl/http/versori/kvapi/models/GetOptions.js +1 -0
  78. package/esm/src/dsl/http/versori/kvapi/models/KVBatchFailure.d.ts +6 -0
  79. package/esm/src/dsl/http/versori/kvapi/models/KVBatchFailure.d.ts.map +1 -0
  80. package/esm/src/dsl/http/versori/kvapi/models/KVBatchFailure.js +1 -0
  81. package/esm/src/dsl/http/versori/kvapi/models/KVBatchResult.d.ts +7 -0
  82. package/esm/src/dsl/http/versori/kvapi/models/KVBatchResult.d.ts.map +1 -0
  83. package/esm/src/dsl/http/versori/kvapi/models/KVBatchResult.js +1 -0
  84. package/esm/src/dsl/http/versori/kvapi/models/KVCommitResult.d.ts +15 -0
  85. package/esm/src/dsl/http/versori/kvapi/models/KVCommitResult.d.ts.map +1 -0
  86. package/esm/src/dsl/http/versori/kvapi/models/KVCommitResult.js +1 -0
  87. package/esm/src/dsl/http/versori/kvapi/models/KVEntry.d.ts +18 -0
  88. package/esm/src/dsl/http/versori/kvapi/models/KVEntry.d.ts.map +1 -0
  89. package/esm/src/dsl/http/versori/kvapi/models/KVEntry.js +1 -0
  90. package/esm/src/dsl/http/versori/kvapi/models/KVFilter.d.ts +15 -0
  91. package/esm/src/dsl/http/versori/kvapi/models/KVFilter.d.ts.map +1 -0
  92. package/esm/src/dsl/http/versori/kvapi/models/KVFilter.js +1 -0
  93. package/esm/src/dsl/http/versori/kvapi/models/KVKey.d.ts +2 -0
  94. package/esm/src/dsl/http/versori/kvapi/models/KVKey.d.ts.map +1 -0
  95. package/esm/src/dsl/http/versori/kvapi/models/KVKey.js +1 -0
  96. package/esm/src/dsl/http/versori/kvapi/models/ListKVRequest.d.ts +7 -0
  97. package/esm/src/dsl/http/versori/kvapi/models/ListKVRequest.d.ts.map +1 -0
  98. package/esm/src/dsl/http/versori/kvapi/models/ListKVRequest.js +1 -0
  99. package/esm/src/dsl/http/versori/kvapi/models/ListKVResponse.d.ts +7 -0
  100. package/esm/src/dsl/http/versori/kvapi/models/ListKVResponse.d.ts.map +1 -0
  101. package/esm/src/dsl/http/versori/kvapi/models/ListKVResponse.js +1 -0
  102. package/esm/src/dsl/http/versori/kvapi/models/ListOptions.d.ts +11 -0
  103. package/esm/src/dsl/http/versori/kvapi/models/ListOptions.d.ts.map +1 -0
  104. package/esm/src/dsl/http/versori/kvapi/models/ListOptions.js +1 -0
  105. package/esm/src/dsl/http/versori/kvapi/models/ListSelector.d.ts +8 -0
  106. package/esm/src/dsl/http/versori/kvapi/models/ListSelector.d.ts.map +1 -0
  107. package/esm/src/dsl/http/versori/kvapi/models/ListSelector.js +1 -0
  108. package/esm/src/dsl/http/versori/kvapi/models/Pagination.d.ts +5 -0
  109. package/esm/src/dsl/http/versori/kvapi/models/Pagination.d.ts.map +1 -0
  110. package/esm/src/dsl/http/versori/kvapi/models/Pagination.js +1 -0
  111. package/esm/src/dsl/http/versori/kvapi/services/BatchOperationsService.d.ts +40 -0
  112. package/esm/src/dsl/http/versori/kvapi/services/BatchOperationsService.d.ts.map +1 -0
  113. package/esm/src/dsl/http/versori/kvapi/services/BatchOperationsService.js +58 -0
  114. package/esm/src/dsl/http/versori/kvapi/services/QueryOperationsService.d.ts +24 -0
  115. package/esm/src/dsl/http/versori/kvapi/services/QueryOperationsService.d.ts.map +1 -0
  116. package/esm/src/dsl/http/versori/kvapi/services/QueryOperationsService.js +40 -0
  117. package/esm/src/dsl/http/versori/roundtripper.d.ts +11 -1
  118. package/esm/src/dsl/http/versori/roundtripper.d.ts.map +1 -1
  119. package/esm/src/dsl/http/versori/roundtripper.js +409 -36
  120. package/esm/src/dsl/tasks/HttpTask.d.ts.map +1 -1
  121. package/esm/src/dsl/tasks/HttpTask.js +1 -0
  122. package/esm/src/kv/KeyValue.d.ts +3 -0
  123. package/esm/src/kv/KeyValue.d.ts.map +1 -1
  124. package/esm/src/kv/memory/MemoryKeyValue.d.ts +3 -0
  125. package/esm/src/kv/memory/MemoryKeyValue.d.ts.map +1 -1
  126. package/esm/src/kv/memory/MemoryKeyValue.js +8 -0
  127. package/esm/src/kv/nats/NatsKeyValue.d.ts +3 -0
  128. package/esm/src/kv/nats/NatsKeyValue.d.ts.map +1 -1
  129. package/esm/src/kv/nats/NatsKeyValue.js +8 -0
  130. package/esm/src/kv/sdk/SDKKeyValue.d.ts +5 -0
  131. package/esm/src/kv/sdk/SDKKeyValue.d.ts.map +1 -1
  132. package/esm/src/kv/sdk/SDKKeyValue.js +19 -0
  133. package/package.json +2 -1
  134. package/script/src/context/Context.d.ts.map +1 -1
  135. package/script/src/context/Context.js +1 -0
  136. package/script/src/dsl/http/versori/contextcredentials.d.ts +2 -0
  137. package/script/src/dsl/http/versori/contextcredentials.d.ts.map +1 -1
  138. package/script/src/dsl/http/versori/{credentials → credential}/client.d.ts +3 -0
  139. package/script/src/dsl/http/versori/credential/client.d.ts.map +1 -0
  140. package/script/src/dsl/http/versori/{credentials → credential}/client.js +10 -0
  141. package/{esm/src/dsl/http/versori/credentials → script/src/dsl/http/versori/credential}/credentials.d.ts +21 -4
  142. package/script/src/dsl/http/versori/credential/credentials.d.ts.map +1 -0
  143. package/script/src/dsl/http/versori/{credentials → credential}/credentials.js +9 -0
  144. package/script/src/dsl/http/versori/credential/mod.d.ts.map +1 -0
  145. package/script/src/dsl/http/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts +40 -0
  146. package/script/src/dsl/http/versori/credential/oauth1/v1/authorization_metadata_pb.d.ts.map +1 -0
  147. package/script/src/dsl/http/versori/credential/oauth1/v1/authorization_metadata_pb.js +38 -0
  148. package/script/src/dsl/http/versori/credential/oauth1/v1/authorization_service_pb.d.ts +57 -0
  149. package/script/src/dsl/http/versori/credential/oauth1/v1/authorization_service_pb.d.ts.map +1 -0
  150. package/script/src/dsl/http/versori/credential/oauth1/v1/authorization_service_pb.js +47 -0
  151. package/script/src/dsl/http/versori/{credentials → credential}/oauth2/v1/token_pb.d.ts +4 -1
  152. package/script/src/dsl/http/versori/credential/oauth2/v1/token_pb.d.ts.map +1 -0
  153. package/script/src/dsl/http/versori/{credentials → credential}/oauth2/v1/token_pb.js +4 -4
  154. package/script/src/dsl/http/versori/{credentials → credential}/oauth2/v1/token_service_pb.d.ts +45 -12
  155. package/script/src/dsl/http/versori/credential/oauth2/v1/token_service_pb.d.ts.map +1 -0
  156. package/script/src/dsl/http/versori/{credentials → credential}/oauth2/v1/token_service_pb.js +15 -16
  157. package/script/src/dsl/http/versori/{credentials → credential}/tokens/v1/token_pb.d.ts +4 -1
  158. package/script/src/dsl/http/versori/credential/tokens/v1/token_pb.d.ts.map +1 -0
  159. package/script/src/dsl/http/versori/{credentials → credential}/tokens/v1/token_pb.js +4 -4
  160. package/{esm/src/dsl/http/versori/credentials → script/src/dsl/http/versori/credential}/tokens/v1/token_service_pb.d.ts +17 -5
  161. package/script/src/dsl/http/versori/credential/tokens/v1/token_service_pb.d.ts.map +1 -0
  162. package/script/src/dsl/http/versori/{credentials → credential}/tokens/v1/token_service_pb.js +8 -8
  163. package/{esm/src/dsl/http/versori/credentials → script/src/dsl/http/versori/credential}/v1alpha1/common_pb.d.ts +13 -4
  164. package/script/src/dsl/http/versori/credential/v1alpha1/common_pb.d.ts.map +1 -0
  165. package/script/src/dsl/http/versori/{credentials → credential}/v1alpha1/common_pb.js +8 -8
  166. package/script/src/dsl/http/versori/credential/v1alpha1/credential_pb.d.ts +364 -0
  167. package/script/src/dsl/http/versori/credential/v1alpha1/credential_pb.d.ts.map +1 -0
  168. package/script/src/dsl/http/versori/credential/v1alpha1/credential_pb.js +252 -0
  169. package/{esm/src/dsl/http/versori/credentials → script/src/dsl/http/versori/credential}/v1alpha1/credential_service_pb.d.ts +61 -16
  170. package/script/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.d.ts.map +1 -0
  171. package/script/src/dsl/http/versori/credential/v1alpha1/credential_service_pb.js +93 -0
  172. package/script/src/dsl/http/versori/kvapi/index.d.ts +41 -0
  173. package/script/src/dsl/http/versori/kvapi/index.d.ts.map +1 -0
  174. package/script/src/dsl/http/versori/kvapi/index.js +22 -0
  175. package/script/src/dsl/http/versori/kvapi/models/BatchDeleteKVResponse.d.ts +4 -0
  176. package/script/src/dsl/http/versori/kvapi/models/BatchDeleteKVResponse.d.ts.map +1 -0
  177. package/script/src/dsl/http/versori/kvapi/models/BatchDeleteKVResponse.js +2 -0
  178. package/script/src/dsl/http/versori/kvapi/models/BatchEntries.d.ts +3 -0
  179. package/script/src/dsl/http/versori/kvapi/models/BatchEntries.d.ts.map +1 -0
  180. package/script/src/dsl/http/versori/kvapi/models/BatchEntries.js +2 -0
  181. package/script/src/dsl/http/versori/kvapi/models/BatchEntry.d.ts +10 -0
  182. package/script/src/dsl/http/versori/kvapi/models/BatchEntry.d.ts.map +1 -0
  183. package/script/src/dsl/http/versori/kvapi/models/BatchEntry.js +2 -0
  184. package/script/src/dsl/http/versori/kvapi/models/BatchGetKVResponse.d.ts +5 -0
  185. package/script/src/dsl/http/versori/kvapi/models/BatchGetKVResponse.d.ts.map +1 -0
  186. package/script/src/dsl/http/versori/kvapi/models/BatchGetKVResponse.js +2 -0
  187. package/script/src/dsl/http/versori/kvapi/models/BatchSetKVRequest.d.ts +5 -0
  188. package/script/src/dsl/http/versori/kvapi/models/BatchSetKVRequest.d.ts.map +1 -0
  189. package/script/src/dsl/http/versori/kvapi/models/BatchSetKVRequest.js +2 -0
  190. package/script/src/dsl/http/versori/kvapi/models/BatchSetKVResponse.d.ts +3 -0
  191. package/script/src/dsl/http/versori/kvapi/models/BatchSetKVResponse.d.ts.map +1 -0
  192. package/script/src/dsl/http/versori/kvapi/models/BatchSetKVResponse.js +2 -0
  193. package/script/src/dsl/http/versori/kvapi/models/CountKVRequest.d.ts +5 -0
  194. package/script/src/dsl/http/versori/kvapi/models/CountKVRequest.d.ts.map +1 -0
  195. package/script/src/dsl/http/versori/kvapi/models/CountKVRequest.js +2 -0
  196. package/script/src/dsl/http/versori/kvapi/models/CountKVResponse.d.ts +4 -0
  197. package/script/src/dsl/http/versori/kvapi/models/CountKVResponse.d.ts.map +1 -0
  198. package/script/src/dsl/http/versori/kvapi/models/CountKVResponse.js +2 -0
  199. package/script/src/dsl/http/versori/kvapi/models/CountSelector.d.ts +4 -0
  200. package/script/src/dsl/http/versori/kvapi/models/CountSelector.d.ts.map +1 -0
  201. package/script/src/dsl/http/versori/kvapi/models/CountSelector.js +2 -0
  202. package/script/src/dsl/http/versori/kvapi/models/Error.d.ts +14 -0
  203. package/script/src/dsl/http/versori/kvapi/models/Error.d.ts.map +1 -0
  204. package/script/src/dsl/http/versori/kvapi/models/Error.js +2 -0
  205. package/script/src/dsl/http/versori/kvapi/models/ErrorField.d.ts +16 -0
  206. package/script/src/dsl/http/versori/kvapi/models/ErrorField.d.ts.map +1 -0
  207. package/script/src/dsl/http/versori/kvapi/models/ErrorField.js +2 -0
  208. package/script/src/dsl/http/versori/kvapi/models/GetOptions.d.ts +7 -0
  209. package/script/src/dsl/http/versori/kvapi/models/GetOptions.d.ts.map +1 -0
  210. package/script/src/dsl/http/versori/kvapi/models/GetOptions.js +2 -0
  211. package/script/src/dsl/http/versori/kvapi/models/KVBatchFailure.d.ts +6 -0
  212. package/script/src/dsl/http/versori/kvapi/models/KVBatchFailure.d.ts.map +1 -0
  213. package/script/src/dsl/http/versori/kvapi/models/KVBatchFailure.js +2 -0
  214. package/script/src/dsl/http/versori/kvapi/models/KVBatchResult.d.ts +7 -0
  215. package/script/src/dsl/http/versori/kvapi/models/KVBatchResult.d.ts.map +1 -0
  216. package/script/src/dsl/http/versori/kvapi/models/KVBatchResult.js +2 -0
  217. package/script/src/dsl/http/versori/kvapi/models/KVCommitResult.d.ts +15 -0
  218. package/script/src/dsl/http/versori/kvapi/models/KVCommitResult.d.ts.map +1 -0
  219. package/script/src/dsl/http/versori/kvapi/models/KVCommitResult.js +2 -0
  220. package/script/src/dsl/http/versori/kvapi/models/KVEntry.d.ts +18 -0
  221. package/script/src/dsl/http/versori/kvapi/models/KVEntry.d.ts.map +1 -0
  222. package/script/src/dsl/http/versori/kvapi/models/KVEntry.js +2 -0
  223. package/script/src/dsl/http/versori/kvapi/models/KVFilter.d.ts +15 -0
  224. package/script/src/dsl/http/versori/kvapi/models/KVFilter.d.ts.map +1 -0
  225. package/script/src/dsl/http/versori/kvapi/models/KVFilter.js +2 -0
  226. package/script/src/dsl/http/versori/kvapi/models/KVKey.d.ts +2 -0
  227. package/script/src/dsl/http/versori/kvapi/models/KVKey.d.ts.map +1 -0
  228. package/script/src/dsl/http/versori/kvapi/models/KVKey.js +2 -0
  229. package/script/src/dsl/http/versori/kvapi/models/ListKVRequest.d.ts +7 -0
  230. package/script/src/dsl/http/versori/kvapi/models/ListKVRequest.d.ts.map +1 -0
  231. package/script/src/dsl/http/versori/kvapi/models/ListKVRequest.js +2 -0
  232. package/script/src/dsl/http/versori/kvapi/models/ListKVResponse.d.ts +7 -0
  233. package/script/src/dsl/http/versori/kvapi/models/ListKVResponse.d.ts.map +1 -0
  234. package/script/src/dsl/http/versori/kvapi/models/ListKVResponse.js +2 -0
  235. package/script/src/dsl/http/versori/kvapi/models/ListOptions.d.ts +11 -0
  236. package/script/src/dsl/http/versori/kvapi/models/ListOptions.d.ts.map +1 -0
  237. package/script/src/dsl/http/versori/kvapi/models/ListOptions.js +2 -0
  238. package/script/src/dsl/http/versori/kvapi/models/ListSelector.d.ts +8 -0
  239. package/script/src/dsl/http/versori/kvapi/models/ListSelector.d.ts.map +1 -0
  240. package/script/src/dsl/http/versori/kvapi/models/ListSelector.js +2 -0
  241. package/script/src/dsl/http/versori/kvapi/models/Pagination.d.ts +5 -0
  242. package/script/src/dsl/http/versori/kvapi/models/Pagination.d.ts.map +1 -0
  243. package/script/src/dsl/http/versori/kvapi/models/Pagination.js +2 -0
  244. package/script/src/dsl/http/versori/kvapi/services/BatchOperationsService.d.ts +40 -0
  245. package/script/src/dsl/http/versori/kvapi/services/BatchOperationsService.d.ts.map +1 -0
  246. package/script/src/dsl/http/versori/kvapi/services/BatchOperationsService.js +62 -0
  247. package/script/src/dsl/http/versori/kvapi/services/QueryOperationsService.d.ts +24 -0
  248. package/script/src/dsl/http/versori/kvapi/services/QueryOperationsService.d.ts.map +1 -0
  249. package/script/src/dsl/http/versori/kvapi/services/QueryOperationsService.js +44 -0
  250. package/script/src/dsl/http/versori/roundtripper.d.ts +11 -1
  251. package/script/src/dsl/http/versori/roundtripper.d.ts.map +1 -1
  252. package/script/src/dsl/http/versori/roundtripper.js +412 -36
  253. package/script/src/dsl/tasks/HttpTask.d.ts.map +1 -1
  254. package/script/src/dsl/tasks/HttpTask.js +1 -0
  255. package/script/src/kv/KeyValue.d.ts +3 -0
  256. package/script/src/kv/KeyValue.d.ts.map +1 -1
  257. package/script/src/kv/memory/MemoryKeyValue.d.ts +3 -0
  258. package/script/src/kv/memory/MemoryKeyValue.d.ts.map +1 -1
  259. package/script/src/kv/memory/MemoryKeyValue.js +8 -0
  260. package/script/src/kv/nats/NatsKeyValue.d.ts +3 -0
  261. package/script/src/kv/nats/NatsKeyValue.d.ts.map +1 -1
  262. package/script/src/kv/nats/NatsKeyValue.js +8 -0
  263. package/script/src/kv/sdk/SDKKeyValue.d.ts +5 -0
  264. package/script/src/kv/sdk/SDKKeyValue.d.ts.map +1 -1
  265. package/script/src/kv/sdk/SDKKeyValue.js +19 -0
  266. package/esm/src/dsl/http/versori/credentials/client.d.ts.map +0 -1
  267. package/esm/src/dsl/http/versori/credentials/credentials.d.ts.map +0 -1
  268. package/esm/src/dsl/http/versori/credentials/mod.d.ts.map +0 -1
  269. package/esm/src/dsl/http/versori/credentials/oauth2/v1/token_pb.d.ts.map +0 -1
  270. package/esm/src/dsl/http/versori/credentials/oauth2/v1/token_service_pb.d.ts.map +0 -1
  271. package/esm/src/dsl/http/versori/credentials/tokens/v1/token_pb.d.ts.map +0 -1
  272. package/esm/src/dsl/http/versori/credentials/tokens/v1/token_service_pb.d.ts.map +0 -1
  273. package/esm/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts.map +0 -1
  274. package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_pb.d.ts +0 -165
  275. package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_pb.d.ts.map +0 -1
  276. package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_pb.js +0 -155
  277. package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts.map +0 -1
  278. package/esm/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.js +0 -128
  279. package/script/src/dsl/http/versori/credentials/client.d.ts.map +0 -1
  280. package/script/src/dsl/http/versori/credentials/credentials.d.ts.map +0 -1
  281. package/script/src/dsl/http/versori/credentials/mod.d.ts.map +0 -1
  282. package/script/src/dsl/http/versori/credentials/oauth2/v1/token_pb.d.ts.map +0 -1
  283. package/script/src/dsl/http/versori/credentials/oauth2/v1/token_service_pb.d.ts.map +0 -1
  284. package/script/src/dsl/http/versori/credentials/tokens/v1/token_pb.d.ts.map +0 -1
  285. package/script/src/dsl/http/versori/credentials/tokens/v1/token_service_pb.d.ts.map +0 -1
  286. package/script/src/dsl/http/versori/credentials/v1alpha1/common_pb.d.ts.map +0 -1
  287. package/script/src/dsl/http/versori/credentials/v1alpha1/credential_pb.d.ts +0 -165
  288. package/script/src/dsl/http/versori/credentials/v1alpha1/credential_pb.d.ts.map +0 -1
  289. package/script/src/dsl/http/versori/credentials/v1alpha1/credential_pb.js +0 -158
  290. package/script/src/dsl/http/versori/credentials/v1alpha1/credential_service_pb.d.ts.map +0 -1
  291. /package/esm/src/dsl/http/versori/{credentials → credential}/mod.d.ts +0 -0
  292. /package/esm/src/dsl/http/versori/{credentials → credential}/mod.js +0 -0
  293. /package/script/src/dsl/http/versori/{credentials → credential}/mod.d.ts +0 -0
  294. /package/script/src/dsl/http/versori/{credentials → credential}/mod.js +0 -0
@@ -2,7 +2,7 @@ import { Tracer } from '@opentelemetry/api';
2
2
  import { Logger } from '../../../observability/logging/Logger.js';
3
3
  import { BaseUrlFetcher, ConfigReader, DynamicFetcher, RoundTripperFactory } from '../types.js';
4
4
  import { CredentialsProvider, Token } from './contextcredentials.js';
5
- import { VersoriCredentialClient } from './credentials/mod.js';
5
+ import { VersoriCredentialClient } from './credential/mod.js';
6
6
  import { PlatformAPIClient } from './platformapi.js';
7
7
  type denoFetch = (input: RequestInfo | URL, init?: RequestInit & {
8
8
  client?: Deno.HttpClient;
@@ -25,12 +25,20 @@ export declare class VersoriCredentialsFactory implements RoundTripperFactory {
25
25
  private cfgReader;
26
26
  private log;
27
27
  private tracer;
28
+ private oauth2Cache;
28
29
  private readonly defaultDynamic;
29
30
  constructor(credsClient: VersoriCredentialClient, credsBaseURL: string, platformAPIClient: PlatformAPIClient, logger: Logger, tracer: Tracer, cfgReader: ConfigReader);
30
31
  static fromEnv(logger: Logger, tracer: Tracer): VersoriCredentialsFactory;
31
32
  private changeRequestInit;
32
33
  private changeBaseUrl;
33
34
  create(connName: string): Promise<denoFetch | undefined>;
35
+ private apiKeyFetcherStatic;
36
+ private basicAuthFetcherStatic;
37
+ private bearerTokenFetcherStatic;
38
+ private getOAuth2Token;
39
+ private oauth2FetcherStatic;
40
+ private oauth1FetcherStatic;
41
+ private mtlsFetcherStatic;
34
42
  createDynamic(templateName: string): Promise<DynamicFetcher | undefined>;
35
43
  private traceFetch;
36
44
  credentials(): CredentialsProvider;
@@ -42,9 +50,11 @@ export declare class VersoriCredentialsFactory implements RoundTripperFactory {
42
50
  private basicAuthFetcher;
43
51
  private bearerTokenFetcher;
44
52
  private oauth2Fetcher;
53
+ private oauth1Fetcher;
45
54
  private mtlsFetcher;
46
55
  private getToken;
47
56
  private getRaw;
57
+ private getOAuth1Metadata;
48
58
  }
49
59
  export {};
50
60
  //# sourceMappingURL=roundtripper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"roundtripper.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/roundtripper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAElE,OAAO,EAEH,cAAc,EACd,YAAY,EAGZ,cAAc,EACd,mBAAmB,EACtB,MAAM,aAAa,CAAC;AAQrB,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAM/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAIrD,KAAK,SAAS,GAAG,CACb,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,IAAI,CAAC,EAAE,WAAW,GAAG;IAAE,MAAM,CAAC,EAAE,IAAI,CAAC,UAAU,CAAA;CAAE,KAChD,OAAO,CAAC,QAAQ,CAAC,CAAC;AAIvB;;;;;;;;;;GAUG;AACH,qBAAa,yBAA0B,YAAW,mBAAmB;IACjE,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,iBAAiB,CAAoB;IAE7C,OAAO,CAAC,SAAS,CAAe;IAEhC,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAK7B;gBAGE,WAAW,EAAE,uBAAuB,EACpC,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,YAAY;IAe3B,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,yBAAyB;IAoCzE,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,aAAa;IAwBrB,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAkDxD,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IA6DxE,OAAO,CAAC,UAAU;IAqClB,WAAW,IAAI,mBAAmB;IAOlC,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc;IAyC9C,cAAc,CAChB,IAAI,EAAE,MAAM,EACZ,YAAY,UAAQ,EACpB,YAAY,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,KAAK,CAAC;IAiBX,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;YAqB9D,uBAAuB;IAoDrC,OAAO,CAAC,aAAa;IAoDrB,OAAO,CAAC,gBAAgB;IAmCxB,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,aAAa;IAqErB,OAAO,CAAC,WAAW;YA6BL,QAAQ;YA2BR,MAAM;CA0BvB"}
1
+ {"version":3,"file":"roundtripper.d.ts","sourceRoot":"","sources":["../../../../../src/src/dsl/http/versori/roundtripper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAElE,OAAO,EAIH,cAAc,EACd,YAAY,EAGZ,cAAc,EACd,mBAAmB,EACtB,MAAM,aAAa,CAAC;AAQrB,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAQ9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAOrD,KAAK,SAAS,GAAG,CACb,KAAK,EAAE,WAAW,GAAG,GAAG,EACxB,IAAI,CAAC,EAAE,WAAW,GAAG;IAAE,MAAM,CAAC,EAAE,IAAI,CAAC,UAAU,CAAA;CAAE,KAChD,OAAO,CAAC,QAAQ,CAAC,CAAC;AAavB;;;;;;;;;;GAUG;AACH,qBAAa,yBAA0B,YAAW,mBAAmB;IACjE,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,iBAAiB,CAAoB;IAE7C,OAAO,CAAC,SAAS,CAAe;IAEhC,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,CAAC,WAAW,CAAuC;IAE1D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAK7B;gBAGE,WAAW,EAAE,uBAAuB,EACpC,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,YAAY;IAe3B,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,yBAAyB;IAoCzE,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,aAAa;IAwBf,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAuG9D,OAAO,CAAC,mBAAmB;IAoD3B,OAAO,CAAC,sBAAsB;IA2B9B,OAAO,CAAC,wBAAwB;YA6BlB,cAAc;IAiB5B,OAAO,CAAC,mBAAmB;IA2D3B,OAAO,CAAC,mBAAmB;IAuE3B,OAAO,CAAC,iBAAiB;IAqBzB,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IAyDxE,OAAO,CAAC,UAAU;IAqClB,WAAW,IAAI,mBAAmB;IAQlC,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc;IAyC9C,cAAc,CAChB,IAAI,EAAE,MAAM,EACZ,YAAY,UAAQ,EACpB,YAAY,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,KAAK,CAAC;IAiBX,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;YAqB9D,uBAAuB;IAoDrC,OAAO,CAAC,aAAa;IAoDrB,OAAO,CAAC,gBAAgB;IAmCxB,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,aAAa;IAqErB,OAAO,CAAC,aAAa;IAyErB,OAAO,CAAC,WAAW;YA6BL,QAAQ;YA2BR,MAAM;YA2BN,iBAAiB;CA0BlC"}
@@ -2,9 +2,12 @@ import { Code, ConnectError } from '@connectrpc/connect';
2
2
  import { ConsoleLogger } from '../../../observability/mod.js';
3
3
  import { VersoriConfigReader } from './configloader.js';
4
4
  import { envVarCredsBaseURL, envVarEnvId, envVarOrgId, envVarPlatformApiBaseURL, } from './constants.js';
5
- import { VersoriCredentialClient } from './credentials/mod.js';
5
+ import { VersoriCredentialClient } from './credential/mod.js';
6
6
  import { isValidURL } from './helpers.js';
7
7
  import { PlatformAPIClient } from './platformapi.js';
8
+ import { URLSearchParams } from 'node:url';
9
+ import { createHmac } from 'node:crypto';
10
+ import OAuth from 'oauth-1.0a'; // Importing the OAuth class as default export
8
11
  /**
9
12
  * VersoriRoundTripper is an implementation of the RoundTripperFactory interface for Versori connections.
10
13
  * This is the intended implementation for when projects/services are hosted on Versori infrastructure.
@@ -54,6 +57,12 @@ export class VersoriCredentialsFactory {
54
57
  writable: true,
55
58
  value: void 0
56
59
  });
60
+ Object.defineProperty(this, "oauth2Cache", {
61
+ enumerable: true,
62
+ configurable: true,
63
+ writable: true,
64
+ value: {}
65
+ });
57
66
  Object.defineProperty(this, "defaultDynamic", {
58
67
  enumerable: true,
59
68
  configurable: true,
@@ -134,55 +143,341 @@ export class VersoriCredentialsFactory {
134
143
  this.log.debug('Using baseURL from connection', { url: newURL.toString() });
135
144
  return newURL.toString();
136
145
  }
137
- create(connName) {
146
+ async create(connName) {
138
147
  const cnxId = this.cfgReader.getConnectionID(connName);
139
148
  if (!cnxId) {
140
- this.log.debug('Connection not found in config, could be a dynamic connection', {
141
- connectionName: connName,
142
- });
143
149
  return Promise.resolve(undefined);
144
150
  }
145
- const _fn = async (input, init) => {
146
- const conn = await this.platformAPIClient.getStaticConnection(cnxId);
147
- if (!conn) {
148
- this.log.error('Connection not found for user, using default fetch', {
149
- connectionName: connName,
150
- });
151
- return this.traceFetch(input, init);
151
+ const conn = await this.platformAPIClient.getStaticConnection(cnxId);
152
+ let _fetch = this.traceFetch;
153
+ if (!conn) {
154
+ this.log.error('Connection not found - using default fetch', { 'connectionName': connName, 'connectionID': cnxId });
155
+ return _fetch;
156
+ }
157
+ for (const cred of conn?.credentials ?? []) {
158
+ switch (cred.authSchemeConfig.type) {
159
+ case 'api-key': {
160
+ const apiTokenResponse = await this.getToken(cred.credential.id);
161
+ if (!apiTokenResponse?.token?.accessToken || !cred.authSchemeConfig.apiKey) {
162
+ this.log.error('API Key credential is missing token or configuration', {
163
+ connectionName: connName,
164
+ credentialId: cred.credential.id,
165
+ });
166
+ continue;
167
+ }
168
+ _fetch = this.apiKeyFetcherStatic(apiTokenResponse.token.accessToken, cred.authSchemeConfig.apiKey, _fetch);
169
+ break;
170
+ }
171
+ case 'basic-auth': {
172
+ const basicTokenResponse = await this.getToken(cred.credential.id);
173
+ if (!basicTokenResponse?.token?.accessToken) {
174
+ this.log.error('Basic Auth credential is missing token', {
175
+ connectionName: connName,
176
+ credentialId: cred.credential.id,
177
+ });
178
+ continue;
179
+ }
180
+ _fetch = this.basicAuthFetcherStatic(basicTokenResponse.token.accessToken, _fetch);
181
+ break;
182
+ }
183
+ case 'jwt-bearer': {
184
+ const bearerTokenResponse = await this.getToken(cred.credential.id);
185
+ if (!bearerTokenResponse?.token?.accessToken) {
186
+ this.log.error('Bearer Token credential is missing token', {
187
+ connectionName: connName,
188
+ credentialId: cred.credential.id,
189
+ });
190
+ continue;
191
+ }
192
+ _fetch = this.bearerTokenFetcherStatic(bearerTokenResponse.token.accessToken, _fetch);
193
+ break;
194
+ }
195
+ case 'oauth2': {
196
+ if (!cred.credential?.id) {
197
+ this.log.error('OAuth2 credential is missing credential ID', {
198
+ connectionName: connName,
199
+ credentialId: cred.credential.id,
200
+ });
201
+ continue;
202
+ }
203
+ _fetch = this.oauth2FetcherStatic(cred.credential.id, _fetch);
204
+ break;
205
+ }
206
+ case 'oauth1': {
207
+ const oauth1Metadata = await this.getOAuth1Metadata(cred.credential.id);
208
+ if (!oauth1Metadata?.authorizationMetadata) {
209
+ this.log.error('OAuth1 credential is missing metadata', {
210
+ connectionName: connName,
211
+ credentialId: cred.credential.id,
212
+ });
213
+ continue;
214
+ }
215
+ _fetch = this.oauth1FetcherStatic(oauth1Metadata, _fetch);
216
+ break;
217
+ }
218
+ case 'certificate': {
219
+ const mtlsData = await this.getRaw(cred.credential.id);
220
+ if (!mtlsData?.credential?.data['cert'] || !mtlsData?.credential?.data['key']) {
221
+ this.log.error('mTLS credential is missing cert or key data', {
222
+ connectionName: connName,
223
+ credentialId: cred.credential.id,
224
+ });
225
+ continue;
226
+ }
227
+ _fetch = this.mtlsFetcherStatic({
228
+ cert: mtlsData.credential.data['cert'],
229
+ key: mtlsData.credential.data['key'],
230
+ ca: mtlsData.credential.data['ca'],
231
+ }, _fetch);
232
+ break;
233
+ }
152
234
  }
235
+ }
236
+ const _fn = async (input, init) => {
153
237
  const _input = this.changeRequestInit(input, conn);
154
- let _fetch = this.traceFetch;
155
- conn.credentials.forEach((cred) => {
156
- switch (cred.authSchemeConfig.type) {
157
- case 'api-key':
158
- _fetch = this.apiKeyFetcher(cred, _fetch);
159
- break;
160
- case 'basic-auth':
161
- _fetch = this.basicAuthFetcher(cred, _fetch);
162
- break;
163
- case 'jwt-bearer':
164
- _fetch = this.bearerTokenFetcher(cred, _fetch);
165
- break;
166
- case 'oauth2':
167
- _fetch = this.oauth2Fetcher(cred, _fetch);
168
- break;
169
- case 'certificate':
170
- _fetch = this.mtlsFetcher(cred, _fetch);
171
- break;
238
+ return _fetch(_input, init);
239
+ };
240
+ return _fn;
241
+ }
242
+ apiKeyFetcherStatic(token, asc, fn) {
243
+ const _fn = async (input, init) => {
244
+ if (!token) {
245
+ throw new Error('Token not found');
246
+ }
247
+ if (!asc) {
248
+ throw new Error('API Key configuration not found');
249
+ }
250
+ if (!init) {
251
+ init = {};
252
+ }
253
+ switch (asc.in) {
254
+ case 'header':
255
+ if (!init.headers) {
256
+ init.headers = new Headers();
257
+ }
258
+ if (init.headers instanceof Headers) {
259
+ init.headers.set(asc.name, token);
260
+ }
261
+ else if (init.headers instanceof Array) {
262
+ init.headers.push([asc.name, token]);
263
+ }
264
+ else {
265
+ init.headers = {
266
+ ...init.headers,
267
+ [asc.name]: token,
268
+ };
269
+ }
270
+ break;
271
+ case 'query':
272
+ if (typeof input === 'string') {
273
+ const _input = new URL(input);
274
+ _input.searchParams.append(asc.name, token);
275
+ input = _input.toString();
276
+ }
277
+ else if (input instanceof Request) {
278
+ const _input = new URL(input.url);
279
+ _input.searchParams.append(asc.name, token);
280
+ input = new Request(_input.toString(), init);
281
+ }
282
+ else if (input instanceof URL) {
283
+ input.searchParams.append(asc.name, token);
284
+ }
285
+ break;
286
+ }
287
+ return fn(input, init);
288
+ };
289
+ return _fn;
290
+ }
291
+ basicAuthFetcherStatic(token, fn) {
292
+ const _fn = async (input, init) => {
293
+ if (!init) {
294
+ init = {};
295
+ }
296
+ if (!init.headers) {
297
+ init.headers = new Headers();
298
+ }
299
+ if (init.headers instanceof Headers) {
300
+ init.headers.set('Authorization', `Basic ${token}`);
301
+ }
302
+ else if (init.headers instanceof Array) {
303
+ init.headers.push(['Authorization', `Basic ${token}`]);
304
+ }
305
+ else {
306
+ init.headers = {
307
+ ...init.headers,
308
+ ['Authorization']: `Basic ${token}`,
309
+ };
310
+ }
311
+ return fn(input, init);
312
+ };
313
+ return _fn;
314
+ }
315
+ bearerTokenFetcherStatic(token, fn) {
316
+ const _fn = async (input, init) => {
317
+ if (!init) {
318
+ init = {};
319
+ }
320
+ if (!init.headers) {
321
+ init.headers = new Headers();
322
+ }
323
+ if (init.headers instanceof Headers) {
324
+ init.headers.set('Authorization', `Bearer ${token}`);
325
+ }
326
+ else if (init.headers instanceof Array) {
327
+ init.headers.push(['Authorization', `Bearer ${token}`]);
328
+ }
329
+ else {
330
+ init.headers = {
331
+ ...init.headers,
332
+ ['Authorization']: `Bearer ${token}`,
333
+ };
334
+ }
335
+ return fn(input, init);
336
+ };
337
+ return _fn;
338
+ }
339
+ // getOauth2Token fetches an OAuth2 token, stores the result in a cache, and returns the token.
340
+ // If forceRefresh is true, it will bypass the cache and fetch a new token then update the cache.
341
+ async getOAuth2Token(credId, forceRefresh = false) {
342
+ if (credId in this.oauth2Cache && !forceRefresh) {
343
+ return Promise.resolve(this.oauth2Cache[credId]);
344
+ }
345
+ const tokenResponse = await this.getToken(credId, forceRefresh);
346
+ this.oauth2Cache[credId] = {
347
+ token: tokenResponse.token?.accessToken || '',
348
+ tokenType: tokenResponse.token?.tokenType,
349
+ };
350
+ this.log.debug('Refreshed OAuth2 token and updating cache');
351
+ return this.oauth2Cache[credId];
352
+ }
353
+ oauth2FetcherStatic(credId, fn) {
354
+ const refreshFn = async (input, init, forceRefresh = false) => {
355
+ const tokenResponse = await this.getOAuth2Token(credId, forceRefresh);
356
+ const token = tokenResponse.token;
357
+ const _tokenType = () => {
358
+ const _tt = tokenResponse.tokenType?.toLowerCase();
359
+ switch (_tt) {
360
+ case 'bearer':
361
+ return 'Bearer';
362
+ case 'mac':
363
+ return 'MAC';
364
+ case 'basic':
365
+ return 'Basic';
172
366
  default:
173
- break;
367
+ return 'Bearer';
174
368
  }
369
+ };
370
+ if (!init) {
371
+ init = {};
372
+ }
373
+ if (!init.headers) {
374
+ init.headers = new Headers();
375
+ }
376
+ if (init.headers instanceof Headers) {
377
+ init.headers.set('Authorization', `${_tokenType()} ${token}`);
378
+ }
379
+ else if (init.headers instanceof Array) {
380
+ init.headers.push(['Authorization', `${_tokenType()} ${token}`]);
381
+ }
382
+ else {
383
+ init.headers = {
384
+ ...init.headers,
385
+ ['Authorization']: `${_tokenType()} ${token}`,
386
+ };
387
+ }
388
+ return fn(input, init);
389
+ };
390
+ const _fn = async (input, init) => {
391
+ const resp = await refreshFn(input, init);
392
+ if (resp.status === 401) {
393
+ this.log.debug('Received 401 Unauthorized response, attempting refresh', {
394
+ url: input,
395
+ status: resp.status,
396
+ });
397
+ return refreshFn(input, init, true);
398
+ }
399
+ return resp;
400
+ };
401
+ return _fn;
402
+ }
403
+ oauth1FetcherStatic(metadata, fn) {
404
+ const _fn = async (input, init) => {
405
+ const authParams = new URLSearchParams(metadata.authorizationMetadata?.authorizationParams);
406
+ if (!metadata.authorizationMetadata) {
407
+ throw new Error('OAuth1 metadata not found');
408
+ }
409
+ const oauth = new OAuth({
410
+ consumer: {
411
+ key: metadata.authorizationMetadata.consumerKey,
412
+ secret: metadata.authorizationMetadata.consumerSecret,
413
+ },
414
+ signature_method: 'HMAC-SHA256',
415
+ hash_function: (baseString, key) => createHmac('sha256', key).update(baseString).digest('base64'),
416
+ realm: authParams.get('realm') || undefined,
175
417
  });
176
- return _fetch(_input, init);
418
+ let url;
419
+ if (input instanceof Request) {
420
+ url = input.url;
421
+ }
422
+ else if (input instanceof URL) {
423
+ url = input.toString();
424
+ }
425
+ else if (typeof input === 'string') {
426
+ url = input;
427
+ }
428
+ else {
429
+ throw new Error('Invalid input type for OAuth1 fetcher');
430
+ }
431
+ const header = oauth.toHeader(oauth.authorize({
432
+ url: url,
433
+ method: init?.method || 'GET',
434
+ }, {
435
+ key: metadata.authorizationMetadata?.oauthToken,
436
+ secret: metadata.authorizationMetadata?.oauthTokenSecret,
437
+ }));
438
+ const authHeader = header.Authorization;
439
+ if (!init) {
440
+ init = {};
441
+ }
442
+ if (!init.headers) {
443
+ init.headers = new Headers();
444
+ }
445
+ if (init.headers instanceof Headers) {
446
+ init.headers.set('Authorization', authHeader);
447
+ }
448
+ else if (init.headers instanceof Array) {
449
+ init.headers.push(['Authorization', authHeader]);
450
+ }
451
+ else {
452
+ init.headers = {
453
+ ...init.headers,
454
+ ['Authorization']: authHeader,
455
+ };
456
+ }
457
+ return fn(input, init);
177
458
  };
178
- return Promise.resolve(_fn);
459
+ return _fn;
460
+ }
461
+ mtlsFetcherStatic(mtlsdata, fn) {
462
+ const _fn = async (input, init) => {
463
+ const cert = new TextDecoder().decode(mtlsdata.cert);
464
+ const key = new TextDecoder().decode(mtlsdata.key);
465
+ const caCerts = new TextDecoder().decode(mtlsdata.ca ?? new Uint8Array());
466
+ const httpClient = Deno.createHttpClient({
467
+ cert,
468
+ key,
469
+ caCerts: caCerts ? [caCerts] : [],
470
+ });
471
+ return fn(input, {
472
+ ...init,
473
+ client: httpClient,
474
+ });
475
+ };
476
+ return _fn;
179
477
  }
180
478
  createDynamic(templateName) {
181
479
  const template = this.cfgReader.getTemplateID(templateName);
182
480
  if (!template) {
183
- this.log.debug('Template not found in config, could be a static connection', {
184
- templateName: templateName,
185
- });
186
481
  return Promise.resolve(undefined);
187
482
  }
188
483
  const _fn = async (activation, input, init) => {
@@ -255,6 +550,7 @@ export class VersoriCredentialsFactory {
255
550
  return {
256
551
  getRaw: this.getRawByName.bind(this),
257
552
  getAccessToken: this.getTokenByName.bind(this),
553
+ getOAuth1Metadata: this.getOAuth1Metadata.bind(this),
258
554
  };
259
555
  }
260
556
  baseUrlFetcher(templateName) {
@@ -506,6 +802,65 @@ export class VersoriCredentialsFactory {
506
802
  };
507
803
  return _fn;
508
804
  }
805
+ oauth1Fetcher(cred, fn) {
806
+ const _fn = async (input, init) => {
807
+ const metadata = await this.getOAuth1Metadata(cred.credential.id);
808
+ const authParams = new URLSearchParams(metadata.authorizationMetadata?.authorizationParams);
809
+ if (!metadata.authorizationMetadata) {
810
+ throw new Error('OAuth1 metadata not found');
811
+ }
812
+ const oauth = new OAuth({
813
+ consumer: {
814
+ key: metadata.authorizationMetadata.consumerKey,
815
+ secret: metadata.authorizationMetadata.consumerSecret,
816
+ },
817
+ signature_method: 'HMAC-SHA256',
818
+ hash_function: (baseString, key) => createHmac('sha256', key).update(baseString).digest('base64'),
819
+ realm: authParams.get('realm') || undefined,
820
+ });
821
+ let url;
822
+ if (input instanceof Request) {
823
+ url = input.url;
824
+ }
825
+ else if (input instanceof URL) {
826
+ url = input.toString();
827
+ }
828
+ else if (typeof input === 'string') {
829
+ url = input;
830
+ }
831
+ else {
832
+ throw new Error('Invalid input type for OAuth1 fetcher');
833
+ }
834
+ const header = oauth.toHeader(oauth.authorize({
835
+ url: url,
836
+ method: init?.method || 'GET',
837
+ }, {
838
+ key: metadata.authorizationMetadata?.oauthToken,
839
+ secret: metadata.authorizationMetadata?.oauthTokenSecret,
840
+ }));
841
+ const authHeader = header.Authorization;
842
+ if (!init) {
843
+ init = {};
844
+ }
845
+ if (!init.headers) {
846
+ init.headers = new Headers();
847
+ }
848
+ if (init.headers instanceof Headers) {
849
+ init.headers.set('Authorization', authHeader);
850
+ }
851
+ else if (init.headers instanceof Array) {
852
+ init.headers.push(['Authorization', authHeader]);
853
+ }
854
+ else {
855
+ init.headers = {
856
+ ...init.headers,
857
+ ['Authorization']: authHeader,
858
+ };
859
+ }
860
+ return fn(input, init);
861
+ };
862
+ return _fn;
863
+ }
509
864
  mtlsFetcher(cred, fn) {
510
865
  const _fn = async (input, init) => {
511
866
  const raw = await this.getRaw(cred.credential.id);
@@ -563,4 +918,22 @@ export class VersoriCredentialsFactory {
563
918
  throw error;
564
919
  }
565
920
  }
921
+ async getOAuth1Metadata(id) {
922
+ try {
923
+ return await this.tokenClient.getOAuth1Metadata(id);
924
+ }
925
+ catch (error) {
926
+ this.log.error('unable to get OAuth1 metadata', { error });
927
+ if (error instanceof ConnectError) {
928
+ if (error.rawMessage.includes('connection error received: not a result of an error') &&
929
+ error.code === Code.Internal) {
930
+ this.log.info('Connection error received, attempting to reconnect');
931
+ this.tokenClient = new VersoriCredentialClient(this.credsBaseURL);
932
+ return await this.tokenClient.getOAuth1Metadata(id);
933
+ }
934
+ throw error;
935
+ }
936
+ throw error;
937
+ }
938
+ }
566
939
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HttpTask.d.ts","sourceRoot":"","sources":["../../../../src/src/dsl/tasks/HttpTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HttpTask.d.ts","sourceRoot":"","sources":["../../../../src/src/dsl/tasks/HttpTask.ts"],"names":[],"mappings":"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"}
@@ -98,6 +98,7 @@ export class HttpContextImpl {
98
98
  this.openKv = this.openKv.bind(this);
99
99
  this.credentials = this.credentials.bind(this);
100
100
  this.nextPage = this.nextPage.bind(this);
101
+ this.createIssue = this.createIssue.bind(this);
101
102
  }
102
103
  get log() {
103
104
  return __classPrivateFieldGet(this, _HttpContextImpl_inner, "f").log;
@@ -1,3 +1,4 @@
1
+ import { ListKVRequest, ListKVResponse, CountKVResponse } from '../dsl/http/versori/kvapi/index.js';
1
2
  type GetOptionsMaybeDefault<T> = {
2
3
  defaultValue?: T;
3
4
  throwOnNotFound?: false;
@@ -15,6 +16,8 @@ export interface KeyValue {
15
16
  get<T = any>(key: string | string[], options?: GetOptionsMaybeDefault<T>): Promise<T | undefined>;
16
17
  get<T = any>(key: string | string[], options?: GetOptions<T>): Promise<T | undefined>;
17
18
  set<T>(key: string | string[], value: T): Promise<void>;
19
+ list(prefix: string[], options?: ListKVRequest): Promise<ListKVResponse>;
20
+ count(prefix: string[]): Promise<CountKVResponse>;
18
21
  delete(key: string | string[]): Promise<void>;
19
22
  }
20
23
  export type KeyValueScope = ':execution:' | ':project:' | ':organization:';
@@ -1 +1 @@
1
- {"version":3,"file":"KeyValue.d.ts","sourceRoot":"","sources":["../../../src/src/kv/KeyValue.ts"],"names":[],"mappings":"AAAA,KAAK,sBAAsB,CAAC,CAAC,IAAI;IAC7B,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB,eAAe,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,KAAK,qBAAqB,CAAC,CAAC,IAAI;IAC5B,YAAY,EAAE,CAAC,CAAC;IAChB,eAAe,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,KAAK,mBAAmB,CAAC,CAAC,IAAI;IAC1B,eAAe,EAAE,IAAI,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,CAAC,IAClB,sBAAsB,CAAC,CAAC,CAAC,GACzB,qBAAqB,CAAC,CAAC,CAAC,GACxB,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAE7B,MAAM,WAAW,QAAQ;IACrB,GAAG,CAAC,CAAC,GAAG,GAAG,EACP,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EACtB,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,GAC3D,OAAO,CAAC,CAAC,CAAC,CAAC;IACd,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAClG,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAEtF,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD;AAED,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,WAAW,GAAG,gBAAgB,CAAC;AAE3E,KAAK,kBAAkB,GAAG;IACtB,KAAK,EAAE,aAAa,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,SAAS,GACnB,OAAO,IAAI,kBAAkB,CAI/B;AAED,KAAK,qBAAqB,GAAG;IACzB,KAAK,EAAE,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,GAAG;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC;AAEvC,MAAM,WAAW,gBAAgB;IAC7B;;;;;OAKG;IACH,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ,CAAC;IAEjC,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD"}
1
+ {"version":3,"file":"KeyValue.d.ts","sourceRoot":"","sources":["../../../src/src/kv/KeyValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAEpG,KAAK,sBAAsB,CAAC,CAAC,IAAI;IAC7B,YAAY,CAAC,EAAE,CAAC,CAAC;IACjB,eAAe,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,KAAK,qBAAqB,CAAC,CAAC,IAAI;IAC5B,YAAY,EAAE,CAAC,CAAC;IAChB,eAAe,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AAEF,KAAK,mBAAmB,CAAC,CAAC,IAAI;IAC1B,eAAe,EAAE,IAAI,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,CAAC,IAClB,sBAAsB,CAAC,CAAC,CAAC,GACzB,qBAAqB,CAAC,CAAC,CAAC,GACxB,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAE7B,MAAM,WAAW,QAAQ;IACrB,GAAG,CAAC,CAAC,GAAG,GAAG,EACP,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EACtB,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,GAC3D,OAAO,CAAC,CAAC,CAAC,CAAC;IACd,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAClG,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAEtF,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEzE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAElD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD;AAED,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,WAAW,GAAG,gBAAgB,CAAC;AAE3E,KAAK,kBAAkB,GAAG;IACtB,KAAK,EAAE,aAAa,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,SAAS,GACnB,OAAO,IAAI,kBAAkB,CAI/B;AAED,KAAK,qBAAqB,GAAG;IACzB,KAAK,EAAE,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,GAAG;IACnE,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC;AAEvC,MAAM,WAAW,gBAAgB;IAC7B;;;;;OAKG;IACH,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ,CAAC;IAEjC,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD"}
@@ -1,8 +1,11 @@
1
1
  import { GetOptions, KeyValue } from '../KeyValue.js';
2
+ import { CountKVResponse, ListKVRequest, ListKVResponse } from '../../dsl/http/versori/kvapi/index.js';
2
3
  export declare class MemoryKeyValue implements KeyValue {
3
4
  private store;
4
5
  get<T>(key: string | string[], options?: GetOptions<T>): Promise<T | undefined>;
5
6
  set<T>(key: string | string[], value: T): Promise<void>;
6
7
  delete(key: string | string[]): Promise<void>;
8
+ list(prefix: string[], options?: ListKVRequest): Promise<ListKVResponse>;
9
+ count(prefix: string[]): Promise<CountKVResponse>;
7
10
  }
8
11
  //# sourceMappingURL=MemoryKeyValue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryKeyValue.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/memory/MemoryKeyValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAGtD,qBAAa,cAAe,YAAW,QAAQ;IAC3C,OAAO,CAAC,KAAK,CAAmC;IAEhD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAc/E,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAKhD"}
1
+ {"version":3,"file":"MemoryKeyValue.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/memory/MemoryKeyValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvG,qBAAa,cAAe,YAAW,QAAQ;IAC3C,OAAO,CAAC,KAAK,CAAmC;IAEhD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAc/E,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7C,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAKxE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;CAIpD"}
@@ -26,4 +26,12 @@ export class MemoryKeyValue {
26
26
  this.store.delete(key instanceof Array ? key.join('.') : key);
27
27
  return Promise.resolve();
28
28
  }
29
+ list(prefix, options) {
30
+ console.log('Listing not implemented', prefix, options);
31
+ return Promise.reject(new Error('Listing not implemented'));
32
+ }
33
+ count(prefix) {
34
+ console.log('Count not implemented', prefix);
35
+ return Promise.reject(new Error('Count not implemented'));
36
+ }
29
37
  }
@@ -1,5 +1,6 @@
1
1
  import { KV } from '../../../deps/jsr.io/@nats-io/kv/3.1.0/src/mod.js';
2
2
  import { GetOptions, KeyValue } from '../KeyValue.js';
3
+ import { CountKVResponse, ListKVRequest, ListKVResponse } from '../../dsl/http/versori/kvapi/index.js';
3
4
  export declare class NatsKeyValue implements KeyValue {
4
5
  private readonly kv;
5
6
  private readonly prefix;
@@ -7,6 +8,8 @@ export declare class NatsKeyValue implements KeyValue {
7
8
  get<T>(key: string | string[], options?: GetOptions<T>): Promise<T | undefined>;
8
9
  set<T>(key: string | string[], value: T): Promise<void>;
9
10
  delete(key: string | string[]): Promise<void>;
11
+ list(prefix: string[], options?: ListKVRequest): Promise<ListKVResponse>;
12
+ count(prefix: string[]): Promise<CountKVResponse>;
10
13
  private generateKey;
11
14
  }
12
15
  //# sourceMappingURL=NatsKeyValue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NatsKeyValue.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/nats/NatsKeyValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAW,MAAM,mDAAmD,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAGtD,qBAAa,YAAa,YAAW,QAAQ;IAC7B,OAAO,CAAC,QAAQ,CAAC,EAAE;IAAM,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAA/B,EAAE,EAAE,EAAE,EAAmB,MAAM,EAAE,MAAM;IAE9D,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,GAAE,UAAU,CAAC,CAAC,CAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAwBnF,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD,OAAO,CAAC,WAAW;CAGtB"}
1
+ {"version":3,"file":"NatsKeyValue.d.ts","sourceRoot":"","sources":["../../../../src/src/kv/nats/NatsKeyValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAW,MAAM,mDAAmD,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAEvG,qBAAa,YAAa,YAAW,QAAQ;IAC7B,OAAO,CAAC,QAAQ,CAAC,EAAE;IAAM,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAA/B,EAAE,EAAE,EAAE,EAAmB,MAAM,EAAE,MAAM;IAE9D,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,GAAE,UAAU,CAAC,CAAC,CAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAwBnF,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAKxE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAKjD,OAAO,CAAC,WAAW;CAGtB"}