@fern-api/venus-api-sdk 0.22.4 → 0.22.34

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 (305) hide show
  1. package/README.md +270 -0
  2. package/dist/cjs/BaseClient.d.ts +17 -4
  3. package/dist/cjs/BaseClient.js +59 -0
  4. package/dist/cjs/Client.d.ts +19 -16
  5. package/dist/cjs/Client.js +15 -50
  6. package/dist/cjs/api/resources/apiKeys/client/Client.d.ts +16 -17
  7. package/dist/cjs/api/resources/apiKeys/client/Client.js +41 -34
  8. package/dist/cjs/api/resources/apiKeys/client/create.js +1 -1
  9. package/dist/cjs/api/resources/apiKeys/client/getTokenMetadata.js +1 -1
  10. package/dist/cjs/api/resources/apiKeys/client/getTokensForOrganization.js +1 -1
  11. package/dist/cjs/api/resources/apiKeys/client/revokeToken.js +1 -1
  12. package/dist/cjs/api/resources/apiKeys/client/revokeTokenById.js +1 -1
  13. package/dist/cjs/api/resources/auth/client/Client.d.ts +69 -0
  14. package/dist/cjs/api/resources/auth/client/Client.js +295 -0
  15. package/dist/cjs/api/resources/auth/client/getAutopilotToken.d.ts +24 -0
  16. package/dist/cjs/api/resources/auth/client/getAutopilotToken.js +65 -0
  17. package/dist/cjs/api/resources/auth/client/getJwt.d.ts +24 -0
  18. package/dist/cjs/api/resources/auth/client/getJwt.js +65 -0
  19. package/dist/cjs/api/resources/auth/client/getOrgForGithubOwner.d.ts +19 -0
  20. package/dist/cjs/api/resources/auth/client/getOrgForGithubOwner.js +55 -0
  21. package/dist/cjs/api/resources/auth/client/index.d.ts +4 -0
  22. package/dist/cjs/api/resources/auth/client/index.js +43 -0
  23. package/dist/cjs/api/resources/auth/client/requests/GetAutopilotTokenRequest.d.ts +22 -0
  24. package/dist/cjs/api/resources/auth/client/requests/GetAutopilotTokenRequest.js +3 -0
  25. package/dist/cjs/api/resources/auth/client/requests/GetJwtRequest.d.ts +16 -0
  26. package/dist/cjs/api/resources/auth/client/requests/GetJwtRequest.js +3 -0
  27. package/dist/cjs/api/resources/auth/client/requests/index.d.ts +2 -0
  28. package/dist/cjs/api/resources/auth/client/requests/index.js +2 -0
  29. package/dist/cjs/api/resources/auth/index.d.ts +2 -0
  30. package/dist/cjs/api/resources/auth/index.js +18 -0
  31. package/dist/cjs/api/resources/auth/types/JwtResponse.d.ts +11 -0
  32. package/dist/cjs/api/resources/auth/types/JwtResponse.js +3 -0
  33. package/dist/cjs/api/resources/auth/types/index.d.ts +1 -0
  34. package/dist/cjs/api/resources/auth/types/index.js +17 -0
  35. package/dist/cjs/api/resources/index.d.ts +3 -0
  36. package/dist/cjs/api/resources/index.js +4 -1
  37. package/dist/cjs/api/resources/organization/client/Client.d.ts +37 -27
  38. package/dist/cjs/api/resources/organization/client/Client.js +152 -60
  39. package/dist/cjs/api/resources/organization/client/addUser.js +1 -1
  40. package/dist/cjs/api/resources/organization/client/create.js +1 -1
  41. package/dist/cjs/api/resources/organization/client/delete.js +1 -1
  42. package/dist/cjs/api/resources/organization/client/get.js +1 -1
  43. package/dist/cjs/api/resources/organization/client/getByPostmanTeamId.d.ts +24 -0
  44. package/dist/cjs/api/resources/organization/client/getByPostmanTeamId.js +65 -0
  45. package/dist/cjs/api/resources/organization/client/getMyOrganizationFromScopedToken.js +1 -1
  46. package/dist/cjs/api/resources/organization/client/getOrgIdsFromToken.js +1 -1
  47. package/dist/cjs/api/resources/organization/client/index.d.ts +1 -0
  48. package/dist/cjs/api/resources/organization/client/index.js +2 -1
  49. package/dist/cjs/api/resources/organization/client/inviteUser.js +1 -1
  50. package/dist/cjs/api/resources/organization/client/isMember.js +1 -1
  51. package/dist/cjs/api/resources/organization/client/removeUser.js +1 -1
  52. package/dist/cjs/api/resources/organization/client/requests/CreateOrganizationRequest.d.ts +8 -0
  53. package/dist/cjs/api/resources/organization/client/update.js +1 -1
  54. package/dist/cjs/api/resources/organization/types/Organization.d.ts +2 -0
  55. package/dist/cjs/api/resources/registry/client/Client.d.ts +12 -13
  56. package/dist/cjs/api/resources/registry/client/Client.js +28 -26
  57. package/dist/cjs/api/resources/registry/client/generateRegistryTokens.d.ts +6 -1
  58. package/dist/cjs/api/resources/registry/client/generateRegistryTokens.js +11 -1
  59. package/dist/cjs/api/resources/registry/client/hasRegistryPermission.js +1 -1
  60. package/dist/cjs/api/resources/registry/client/revokeToken.d.ts +6 -1
  61. package/dist/cjs/api/resources/registry/client/revokeToken.js +11 -1
  62. package/dist/cjs/api/resources/user/client/Client.d.ts +12 -13
  63. package/dist/cjs/api/resources/user/client/Client.js +27 -25
  64. package/dist/cjs/api/resources/user/client/getMyOrganizations.js +1 -1
  65. package/dist/cjs/api/resources/user/client/getMyself.js +1 -1
  66. package/dist/cjs/api/resources/user/client/linkAccounts.js +1 -1
  67. package/dist/cjs/auth/BearerAuthProvider.d.ts +20 -0
  68. package/dist/cjs/auth/BearerAuthProvider.js +76 -0
  69. package/dist/cjs/auth/index.d.ts +1 -0
  70. package/dist/cjs/auth/index.js +5 -0
  71. package/dist/cjs/core/auth/AuthProvider.d.ts +4 -1
  72. package/dist/cjs/core/auth/BearerToken.d.ts +3 -1
  73. package/dist/cjs/core/auth/BearerToken.js +7 -6
  74. package/dist/cjs/core/auth/NoOpAuthProvider.d.ts +5 -0
  75. package/dist/cjs/core/auth/NoOpAuthProvider.js +9 -0
  76. package/dist/cjs/core/auth/index.d.ts +1 -0
  77. package/dist/cjs/core/auth/index.js +3 -1
  78. package/dist/cjs/core/exports.d.ts +1 -0
  79. package/dist/cjs/core/exports.js +17 -0
  80. package/dist/cjs/core/fetcher/BinaryResponse.d.ts +6 -7
  81. package/dist/cjs/core/fetcher/EndpointSupplier.d.ts +2 -2
  82. package/dist/cjs/core/fetcher/Fetcher.d.ts +10 -4
  83. package/dist/cjs/core/fetcher/Fetcher.js +210 -10
  84. package/dist/cjs/core/fetcher/getRequestBody.d.ts +1 -1
  85. package/dist/cjs/core/fetcher/getRequestBody.js +4 -0
  86. package/dist/cjs/core/fetcher/getResponseBody.js +18 -4
  87. package/dist/cjs/core/fetcher/makeRequest.d.ts +1 -1
  88. package/dist/cjs/core/fetcher/makeRequest.js +0 -2
  89. package/dist/cjs/core/fetcher/requestWithRetries.js +0 -9
  90. package/dist/cjs/core/fetcher/signals.d.ts +1 -7
  91. package/dist/cjs/core/fetcher/signals.js +0 -12
  92. package/dist/cjs/core/headers.d.ts +2 -2
  93. package/dist/cjs/core/headers.js +6 -4
  94. package/dist/cjs/core/index.d.ts +1 -0
  95. package/dist/cjs/core/index.js +2 -1
  96. package/dist/cjs/core/logging/exports.d.ts +18 -0
  97. package/dist/cjs/core/logging/exports.js +45 -0
  98. package/dist/cjs/core/logging/index.d.ts +1 -0
  99. package/dist/cjs/core/logging/index.js +17 -0
  100. package/dist/cjs/core/logging/logger.d.ts +126 -0
  101. package/dist/cjs/core/logging/logger.js +144 -0
  102. package/dist/cjs/core/runtime/runtime.js +11 -10
  103. package/dist/cjs/core/schemas/Schema.d.ts +1 -0
  104. package/dist/cjs/core/schemas/Schema.js +1 -0
  105. package/dist/cjs/core/schemas/builders/object/object.js +34 -3
  106. package/dist/cjs/core/schemas/builders/primitives/index.d.ts +1 -0
  107. package/dist/cjs/core/schemas/builders/primitives/index.js +3 -1
  108. package/dist/cjs/core/schemas/builders/primitives/never.d.ts +2 -0
  109. package/dist/cjs/core/schemas/builders/primitives/never.js +14 -0
  110. package/dist/cjs/core/url/join.js +0 -1
  111. package/dist/cjs/exports.d.ts +1 -0
  112. package/dist/cjs/exports.js +17 -0
  113. package/dist/cjs/index.d.ts +1 -0
  114. package/dist/cjs/index.js +4 -0
  115. package/dist/cjs/serialization/resources/auth/client/getAutopilotToken.d.ts +10 -0
  116. package/dist/cjs/serialization/resources/auth/client/getAutopilotToken.js +66 -0
  117. package/dist/cjs/serialization/resources/auth/client/getJwt.d.ts +10 -0
  118. package/dist/cjs/serialization/resources/auth/client/getJwt.js +66 -0
  119. package/dist/cjs/serialization/resources/auth/client/getOrgForGithubOwner.d.ts +8 -0
  120. package/dist/cjs/serialization/resources/auth/client/getOrgForGithubOwner.js +6 -0
  121. package/dist/cjs/serialization/resources/auth/client/index.d.ts +4 -0
  122. package/dist/cjs/serialization/resources/auth/client/index.js +43 -0
  123. package/dist/cjs/serialization/resources/auth/client/requests/GetAutopilotTokenRequest.d.ts +11 -0
  124. package/dist/cjs/serialization/resources/auth/client/requests/GetAutopilotTokenRequest.js +43 -0
  125. package/dist/cjs/serialization/resources/auth/client/requests/GetJwtRequest.d.ts +10 -0
  126. package/dist/cjs/serialization/resources/auth/client/requests/GetJwtRequest.js +42 -0
  127. package/dist/cjs/serialization/resources/auth/client/requests/index.d.ts +2 -0
  128. package/dist/cjs/serialization/resources/auth/client/requests/index.js +7 -0
  129. package/dist/cjs/serialization/resources/auth/index.d.ts +2 -0
  130. package/dist/cjs/serialization/resources/auth/index.js +18 -0
  131. package/dist/cjs/serialization/resources/auth/types/JwtResponse.d.ts +10 -0
  132. package/dist/cjs/serialization/resources/auth/types/JwtResponse.js +42 -0
  133. package/dist/cjs/serialization/resources/auth/types/index.d.ts +1 -0
  134. package/dist/cjs/serialization/resources/auth/types/index.js +17 -0
  135. package/dist/cjs/serialization/resources/index.d.ts +3 -0
  136. package/dist/cjs/serialization/resources/index.js +4 -1
  137. package/dist/cjs/serialization/resources/organization/client/getByPostmanTeamId.d.ts +10 -0
  138. package/dist/cjs/serialization/resources/organization/client/getByPostmanTeamId.js +66 -0
  139. package/dist/cjs/serialization/resources/organization/client/index.d.ts +1 -0
  140. package/dist/cjs/serialization/resources/organization/client/index.js +2 -1
  141. package/dist/cjs/serialization/resources/organization/client/requests/CreateOrganizationRequest.d.ts +2 -0
  142. package/dist/cjs/serialization/resources/organization/client/requests/CreateOrganizationRequest.js +2 -0
  143. package/dist/cjs/serialization/resources/organization/types/Organization.d.ts +1 -0
  144. package/dist/cjs/serialization/resources/organization/types/Organization.js +1 -0
  145. package/dist/cjs/serialization/resources/registry/client/generateRegistryTokens.d.ts +4 -1
  146. package/dist/cjs/serialization/resources/registry/client/generateRegistryTokens.js +3 -0
  147. package/dist/cjs/serialization/resources/registry/client/revokeToken.d.ts +4 -1
  148. package/dist/cjs/serialization/resources/registry/client/revokeToken.js +3 -0
  149. package/dist/cjs/version.d.ts +1 -1
  150. package/dist/cjs/version.js +1 -1
  151. package/dist/esm/BaseClient.d.mts +17 -4
  152. package/dist/esm/BaseClient.mjs +24 -1
  153. package/dist/esm/Client.d.mts +19 -16
  154. package/dist/esm/Client.mjs +16 -18
  155. package/dist/esm/api/resources/apiKeys/client/Client.d.mts +16 -17
  156. package/dist/esm/api/resources/apiKeys/client/Client.mjs +40 -33
  157. package/dist/esm/api/resources/apiKeys/client/create.mjs +1 -1
  158. package/dist/esm/api/resources/apiKeys/client/getTokenMetadata.mjs +1 -1
  159. package/dist/esm/api/resources/apiKeys/client/getTokensForOrganization.mjs +1 -1
  160. package/dist/esm/api/resources/apiKeys/client/revokeToken.mjs +1 -1
  161. package/dist/esm/api/resources/apiKeys/client/revokeTokenById.mjs +1 -1
  162. package/dist/esm/api/resources/auth/client/Client.d.mts +69 -0
  163. package/dist/esm/api/resources/auth/client/Client.mjs +258 -0
  164. package/dist/esm/api/resources/auth/client/getAutopilotToken.d.mts +24 -0
  165. package/dist/esm/api/resources/auth/client/getAutopilotToken.mjs +29 -0
  166. package/dist/esm/api/resources/auth/client/getJwt.d.mts +24 -0
  167. package/dist/esm/api/resources/auth/client/getJwt.mjs +29 -0
  168. package/dist/esm/api/resources/auth/client/getOrgForGithubOwner.d.mts +19 -0
  169. package/dist/esm/api/resources/auth/client/getOrgForGithubOwner.mjs +19 -0
  170. package/dist/esm/api/resources/auth/client/index.d.mts +4 -0
  171. package/dist/esm/api/resources/auth/client/index.mjs +4 -0
  172. package/dist/esm/api/resources/auth/client/requests/GetAutopilotTokenRequest.d.mts +22 -0
  173. package/dist/esm/api/resources/auth/client/requests/GetAutopilotTokenRequest.mjs +2 -0
  174. package/dist/esm/api/resources/auth/client/requests/GetJwtRequest.d.mts +16 -0
  175. package/dist/esm/api/resources/auth/client/requests/GetJwtRequest.mjs +2 -0
  176. package/dist/esm/api/resources/auth/client/requests/index.d.mts +2 -0
  177. package/dist/esm/api/resources/auth/client/requests/index.mjs +1 -0
  178. package/dist/esm/api/resources/auth/index.d.mts +2 -0
  179. package/dist/esm/api/resources/auth/index.mjs +2 -0
  180. package/dist/esm/api/resources/auth/types/JwtResponse.d.mts +11 -0
  181. package/dist/esm/api/resources/auth/types/JwtResponse.mjs +2 -0
  182. package/dist/esm/api/resources/auth/types/index.d.mts +1 -0
  183. package/dist/esm/api/resources/auth/types/index.mjs +1 -0
  184. package/dist/esm/api/resources/index.d.mts +3 -0
  185. package/dist/esm/api/resources/index.mjs +3 -0
  186. package/dist/esm/api/resources/organization/client/Client.d.mts +37 -27
  187. package/dist/esm/api/resources/organization/client/Client.mjs +151 -59
  188. package/dist/esm/api/resources/organization/client/addUser.mjs +1 -1
  189. package/dist/esm/api/resources/organization/client/create.mjs +1 -1
  190. package/dist/esm/api/resources/organization/client/delete.mjs +1 -1
  191. package/dist/esm/api/resources/organization/client/get.mjs +1 -1
  192. package/dist/esm/api/resources/organization/client/getByPostmanTeamId.d.mts +24 -0
  193. package/dist/esm/api/resources/organization/client/getByPostmanTeamId.mjs +29 -0
  194. package/dist/esm/api/resources/organization/client/getMyOrganizationFromScopedToken.mjs +1 -1
  195. package/dist/esm/api/resources/organization/client/getOrgIdsFromToken.mjs +1 -1
  196. package/dist/esm/api/resources/organization/client/index.d.mts +1 -0
  197. package/dist/esm/api/resources/organization/client/index.mjs +1 -0
  198. package/dist/esm/api/resources/organization/client/inviteUser.mjs +1 -1
  199. package/dist/esm/api/resources/organization/client/isMember.mjs +1 -1
  200. package/dist/esm/api/resources/organization/client/removeUser.mjs +1 -1
  201. package/dist/esm/api/resources/organization/client/requests/CreateOrganizationRequest.d.mts +8 -0
  202. package/dist/esm/api/resources/organization/client/update.mjs +1 -1
  203. package/dist/esm/api/resources/organization/types/Organization.d.mts +2 -0
  204. package/dist/esm/api/resources/registry/client/Client.d.mts +12 -13
  205. package/dist/esm/api/resources/registry/client/Client.mjs +27 -25
  206. package/dist/esm/api/resources/registry/client/generateRegistryTokens.d.mts +6 -1
  207. package/dist/esm/api/resources/registry/client/generateRegistryTokens.mjs +11 -1
  208. package/dist/esm/api/resources/registry/client/hasRegistryPermission.mjs +1 -1
  209. package/dist/esm/api/resources/registry/client/revokeToken.d.mts +6 -1
  210. package/dist/esm/api/resources/registry/client/revokeToken.mjs +11 -1
  211. package/dist/esm/api/resources/user/client/Client.d.mts +12 -13
  212. package/dist/esm/api/resources/user/client/Client.mjs +26 -24
  213. package/dist/esm/api/resources/user/client/getMyOrganizations.mjs +1 -1
  214. package/dist/esm/api/resources/user/client/getMyself.mjs +1 -1
  215. package/dist/esm/api/resources/user/client/linkAccounts.mjs +1 -1
  216. package/dist/esm/auth/BearerAuthProvider.d.mts +20 -0
  217. package/dist/esm/auth/BearerAuthProvider.mjs +39 -0
  218. package/dist/esm/auth/index.d.mts +1 -0
  219. package/dist/esm/auth/index.mjs +1 -0
  220. package/dist/esm/core/auth/AuthProvider.d.mts +4 -1
  221. package/dist/esm/core/auth/BearerToken.d.mts +3 -1
  222. package/dist/esm/core/auth/BearerToken.mjs +7 -6
  223. package/dist/esm/core/auth/NoOpAuthProvider.d.mts +5 -0
  224. package/dist/esm/core/auth/NoOpAuthProvider.mjs +5 -0
  225. package/dist/esm/core/auth/index.d.mts +1 -0
  226. package/dist/esm/core/auth/index.mjs +1 -0
  227. package/dist/esm/core/exports.d.mts +1 -0
  228. package/dist/esm/core/exports.mjs +1 -0
  229. package/dist/esm/core/fetcher/BinaryResponse.d.mts +6 -7
  230. package/dist/esm/core/fetcher/EndpointSupplier.d.mts +2 -2
  231. package/dist/esm/core/fetcher/Fetcher.d.mts +10 -4
  232. package/dist/esm/core/fetcher/Fetcher.mjs +210 -10
  233. package/dist/esm/core/fetcher/getRequestBody.d.mts +1 -1
  234. package/dist/esm/core/fetcher/getRequestBody.mjs +4 -0
  235. package/dist/esm/core/fetcher/getResponseBody.mjs +18 -4
  236. package/dist/esm/core/fetcher/makeRequest.d.mts +1 -1
  237. package/dist/esm/core/fetcher/makeRequest.mjs +0 -2
  238. package/dist/esm/core/fetcher/requestWithRetries.mjs +0 -9
  239. package/dist/esm/core/fetcher/signals.d.mts +1 -7
  240. package/dist/esm/core/fetcher/signals.mjs +0 -12
  241. package/dist/esm/core/headers.d.mts +2 -2
  242. package/dist/esm/core/headers.mjs +6 -4
  243. package/dist/esm/core/index.d.mts +1 -0
  244. package/dist/esm/core/index.mjs +1 -0
  245. package/dist/esm/core/logging/exports.d.mts +18 -0
  246. package/dist/esm/core/logging/exports.mjs +9 -0
  247. package/dist/esm/core/logging/index.d.mts +1 -0
  248. package/dist/esm/core/logging/index.mjs +1 -0
  249. package/dist/esm/core/logging/logger.d.mts +126 -0
  250. package/dist/esm/core/logging/logger.mjs +138 -0
  251. package/dist/esm/core/runtime/runtime.mjs +11 -10
  252. package/dist/esm/core/schemas/Schema.d.mts +1 -0
  253. package/dist/esm/core/schemas/Schema.mjs +1 -0
  254. package/dist/esm/core/schemas/builders/object/object.mjs +34 -3
  255. package/dist/esm/core/schemas/builders/primitives/index.d.mts +1 -0
  256. package/dist/esm/core/schemas/builders/primitives/index.mjs +1 -0
  257. package/dist/esm/core/schemas/builders/primitives/never.d.mts +2 -0
  258. package/dist/esm/core/schemas/builders/primitives/never.mjs +11 -0
  259. package/dist/esm/core/url/join.mjs +0 -1
  260. package/dist/esm/exports.d.mts +1 -0
  261. package/dist/esm/exports.mjs +1 -0
  262. package/dist/esm/index.d.mts +1 -0
  263. package/dist/esm/index.mjs +1 -0
  264. package/dist/esm/serialization/resources/auth/client/getAutopilotToken.d.mts +10 -0
  265. package/dist/esm/serialization/resources/auth/client/getAutopilotToken.mjs +30 -0
  266. package/dist/esm/serialization/resources/auth/client/getJwt.d.mts +10 -0
  267. package/dist/esm/serialization/resources/auth/client/getJwt.mjs +30 -0
  268. package/dist/esm/serialization/resources/auth/client/getOrgForGithubOwner.d.mts +8 -0
  269. package/dist/esm/serialization/resources/auth/client/getOrgForGithubOwner.mjs +3 -0
  270. package/dist/esm/serialization/resources/auth/client/index.d.mts +4 -0
  271. package/dist/esm/serialization/resources/auth/client/index.mjs +4 -0
  272. package/dist/esm/serialization/resources/auth/client/requests/GetAutopilotTokenRequest.d.mts +11 -0
  273. package/dist/esm/serialization/resources/auth/client/requests/GetAutopilotTokenRequest.mjs +7 -0
  274. package/dist/esm/serialization/resources/auth/client/requests/GetJwtRequest.d.mts +10 -0
  275. package/dist/esm/serialization/resources/auth/client/requests/GetJwtRequest.mjs +6 -0
  276. package/dist/esm/serialization/resources/auth/client/requests/index.d.mts +2 -0
  277. package/dist/esm/serialization/resources/auth/client/requests/index.mjs +2 -0
  278. package/dist/esm/serialization/resources/auth/index.d.mts +2 -0
  279. package/dist/esm/serialization/resources/auth/index.mjs +2 -0
  280. package/dist/esm/serialization/resources/auth/types/JwtResponse.d.mts +10 -0
  281. package/dist/esm/serialization/resources/auth/types/JwtResponse.mjs +6 -0
  282. package/dist/esm/serialization/resources/auth/types/index.d.mts +1 -0
  283. package/dist/esm/serialization/resources/auth/types/index.mjs +1 -0
  284. package/dist/esm/serialization/resources/index.d.mts +3 -0
  285. package/dist/esm/serialization/resources/index.mjs +3 -0
  286. package/dist/esm/serialization/resources/organization/client/getByPostmanTeamId.d.mts +10 -0
  287. package/dist/esm/serialization/resources/organization/client/getByPostmanTeamId.mjs +30 -0
  288. package/dist/esm/serialization/resources/organization/client/index.d.mts +1 -0
  289. package/dist/esm/serialization/resources/organization/client/index.mjs +1 -0
  290. package/dist/esm/serialization/resources/organization/client/requests/CreateOrganizationRequest.d.mts +2 -0
  291. package/dist/esm/serialization/resources/organization/client/requests/CreateOrganizationRequest.mjs +2 -0
  292. package/dist/esm/serialization/resources/organization/types/Organization.d.mts +1 -0
  293. package/dist/esm/serialization/resources/organization/types/Organization.mjs +1 -0
  294. package/dist/esm/serialization/resources/registry/client/generateRegistryTokens.d.mts +4 -1
  295. package/dist/esm/serialization/resources/registry/client/generateRegistryTokens.mjs +3 -0
  296. package/dist/esm/serialization/resources/registry/client/revokeToken.d.mts +4 -1
  297. package/dist/esm/serialization/resources/registry/client/revokeToken.mjs +3 -0
  298. package/dist/esm/version.d.mts +1 -1
  299. package/dist/esm/version.mjs +1 -1
  300. package/package.json +8 -3
  301. package/reference.md +1369 -0
  302. package/dist/cjs/core/fetcher/ResponseWithBody.d.ts +0 -4
  303. package/dist/cjs/core/fetcher/ResponseWithBody.js +0 -6
  304. package/dist/esm/core/fetcher/ResponseWithBody.d.mts +0 -4
  305. package/dist/esm/core/fetcher/ResponseWithBody.mjs +0 -3
@@ -49,7 +49,7 @@ exports.Error = {
49
49
  _visit: (value, visitor) => {
50
50
  switch (value.error) {
51
51
  default:
52
- return visitor._other(value);
52
+ return visitor._other(value.content);
53
53
  }
54
54
  },
55
55
  };
@@ -49,7 +49,7 @@ exports.Error = {
49
49
  _visit: (value, visitor) => {
50
50
  switch (value.error) {
51
51
  default:
52
- return visitor._other(value);
52
+ return visitor._other(value.content);
53
53
  }
54
54
  },
55
55
  };
@@ -0,0 +1,20 @@
1
+ import * as core from "../core/index.js";
2
+ declare const TOKEN_PARAM: "token";
3
+ export declare class BearerAuthProvider implements core.AuthProvider {
4
+ private readonly options;
5
+ constructor(options: BearerAuthProvider.Options);
6
+ static canCreate(options: Partial<BearerAuthProvider.Options>): boolean;
7
+ getAuthRequest({ endpointMetadata, }?: {
8
+ endpointMetadata?: core.EndpointMetadata;
9
+ }): Promise<core.AuthRequest>;
10
+ }
11
+ export declare namespace BearerAuthProvider {
12
+ const AUTH_SCHEME: "bearer";
13
+ const AUTH_CONFIG_ERROR_MESSAGE: string;
14
+ type Options = AuthOptions;
15
+ type AuthOptions = {
16
+ [TOKEN_PARAM]?: core.Supplier<core.BearerToken>;
17
+ };
18
+ function createInstance(options: Options): core.AuthProvider;
19
+ }
20
+ export {};
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ // This file was auto-generated by Fern from our API Definition.
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
37
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
38
+ return new (P || (P = Promise))(function (resolve, reject) {
39
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
40
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
41
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
42
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
43
+ });
44
+ };
45
+ Object.defineProperty(exports, "__esModule", { value: true });
46
+ exports.BearerAuthProvider = void 0;
47
+ const core = __importStar(require("../core/index.js"));
48
+ const TOKEN_PARAM = "token";
49
+ class BearerAuthProvider {
50
+ constructor(options) {
51
+ this.options = options;
52
+ }
53
+ static canCreate(options) {
54
+ return (options === null || options === void 0 ? void 0 : options[TOKEN_PARAM]) != null;
55
+ }
56
+ getAuthRequest() {
57
+ return __awaiter(this, arguments, void 0, function* ({ endpointMetadata, } = {}) {
58
+ const token = yield core.Supplier.get(this.options[TOKEN_PARAM]);
59
+ if (token == null) {
60
+ return { headers: {} };
61
+ }
62
+ return {
63
+ headers: { Authorization: `Bearer ${token}` },
64
+ };
65
+ });
66
+ }
67
+ }
68
+ exports.BearerAuthProvider = BearerAuthProvider;
69
+ (function (BearerAuthProvider) {
70
+ BearerAuthProvider.AUTH_SCHEME = "bearer";
71
+ BearerAuthProvider.AUTH_CONFIG_ERROR_MESSAGE = `Please provide '${TOKEN_PARAM}' when initializing the client`;
72
+ function createInstance(options) {
73
+ return new BearerAuthProvider(options);
74
+ }
75
+ BearerAuthProvider.createInstance = createInstance;
76
+ })(BearerAuthProvider || (exports.BearerAuthProvider = BearerAuthProvider = {}));
@@ -0,0 +1 @@
1
+ export { BearerAuthProvider } from "./BearerAuthProvider.js";
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BearerAuthProvider = void 0;
4
+ var BearerAuthProvider_js_1 = require("./BearerAuthProvider.js");
5
+ Object.defineProperty(exports, "BearerAuthProvider", { enumerable: true, get: function () { return BearerAuthProvider_js_1.BearerAuthProvider; } });
@@ -1,4 +1,7 @@
1
+ import type { EndpointMetadata } from "../fetcher/EndpointMetadata.js";
1
2
  import type { AuthRequest } from "./AuthRequest.js";
2
3
  export interface AuthProvider {
3
- getAuthRequest(): Promise<AuthRequest>;
4
+ getAuthRequest(arg?: {
5
+ endpointMetadata?: EndpointMetadata;
6
+ }): Promise<AuthRequest>;
4
7
  }
@@ -1,5 +1,7 @@
1
1
  export type BearerToken = string;
2
+ declare function toAuthorizationHeader(token: string | undefined): string | undefined;
2
3
  export declare const BearerToken: {
3
- toAuthorizationHeader: (token: BearerToken | undefined) => string | undefined;
4
+ toAuthorizationHeader: typeof toAuthorizationHeader;
4
5
  fromAuthorizationHeader: (header: string) => BearerToken;
5
6
  };
7
+ export {};
@@ -2,13 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BearerToken = void 0;
4
4
  const BEARER_AUTH_HEADER_PREFIX = /^Bearer /i;
5
+ function toAuthorizationHeader(token) {
6
+ if (token == null) {
7
+ return undefined;
8
+ }
9
+ return `Bearer ${token}`;
10
+ }
5
11
  exports.BearerToken = {
6
- toAuthorizationHeader: (token) => {
7
- if (token == null) {
8
- return undefined;
9
- }
10
- return `Bearer ${token}`;
11
- },
12
+ toAuthorizationHeader: toAuthorizationHeader,
12
13
  fromAuthorizationHeader: (header) => {
13
14
  return header.replace(BEARER_AUTH_HEADER_PREFIX, "").trim();
14
15
  },
@@ -0,0 +1,5 @@
1
+ import type { AuthProvider } from "./AuthProvider.js";
2
+ import type { AuthRequest } from "./AuthRequest.js";
3
+ export declare class NoOpAuthProvider implements AuthProvider {
4
+ getAuthRequest(): Promise<AuthRequest>;
5
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NoOpAuthProvider = void 0;
4
+ class NoOpAuthProvider {
5
+ getAuthRequest() {
6
+ return Promise.resolve({ headers: {} });
7
+ }
8
+ }
9
+ exports.NoOpAuthProvider = NoOpAuthProvider;
@@ -2,3 +2,4 @@ export type { AuthProvider } from "./AuthProvider.js";
2
2
  export type { AuthRequest } from "./AuthRequest.js";
3
3
  export { BasicAuth } from "./BasicAuth.js";
4
4
  export { BearerToken } from "./BearerToken.js";
5
+ export { NoOpAuthProvider } from "./NoOpAuthProvider.js";
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BearerToken = exports.BasicAuth = void 0;
3
+ exports.NoOpAuthProvider = exports.BearerToken = exports.BasicAuth = void 0;
4
4
  var BasicAuth_js_1 = require("./BasicAuth.js");
5
5
  Object.defineProperty(exports, "BasicAuth", { enumerable: true, get: function () { return BasicAuth_js_1.BasicAuth; } });
6
6
  var BearerToken_js_1 = require("./BearerToken.js");
7
7
  Object.defineProperty(exports, "BearerToken", { enumerable: true, get: function () { return BearerToken_js_1.BearerToken; } });
8
+ var NoOpAuthProvider_js_1 = require("./NoOpAuthProvider.js");
9
+ Object.defineProperty(exports, "NoOpAuthProvider", { enumerable: true, get: function () { return NoOpAuthProvider_js_1.NoOpAuthProvider; } });
@@ -0,0 +1 @@
1
+ export * from "./logging/exports.js";
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./logging/exports.js"), exports);
@@ -1,20 +1,19 @@
1
- import type { ResponseWithBody } from "./ResponseWithBody.js";
2
1
  export type BinaryResponse = {
3
2
  /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/bodyUsed) */
4
- bodyUsed: boolean;
3
+ bodyUsed: Response["bodyUsed"];
5
4
  /**
6
5
  * Returns a ReadableStream of the response body.
7
6
  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/body)
8
7
  */
9
- stream: () => ReadableStream<Uint8Array>;
8
+ stream: () => Response["body"];
10
9
  /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/arrayBuffer) */
11
- arrayBuffer: () => Promise<ArrayBuffer>;
10
+ arrayBuffer: () => ReturnType<Response["arrayBuffer"]>;
12
11
  /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/blob) */
13
- blob: () => Promise<Blob>;
12
+ blob: () => ReturnType<Response["blob"]>;
14
13
  /**
15
14
  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/bytes)
16
15
  * Some versions of the Fetch API may not support this method.
17
16
  */
18
- bytes?(): Promise<Uint8Array>;
17
+ bytes?(): ReturnType<Response["bytes"]>;
19
18
  };
20
- export declare function getBinaryResponse(response: ResponseWithBody): BinaryResponse;
19
+ export declare function getBinaryResponse(response: Response): BinaryResponse;
@@ -1,12 +1,12 @@
1
1
  import type { EndpointMetadata } from "./EndpointMetadata.js";
2
2
  import type { Supplier } from "./Supplier.js";
3
3
  type EndpointSupplierFn<T> = (arg: {
4
- endpointMetadata: EndpointMetadata;
4
+ endpointMetadata?: EndpointMetadata;
5
5
  }) => T | Promise<T>;
6
6
  export type EndpointSupplier<T> = Supplier<T> | EndpointSupplierFn<T>;
7
7
  export declare const EndpointSupplier: {
8
8
  get: <T>(supplier: EndpointSupplier<T>, arg: {
9
- endpointMetadata: EndpointMetadata;
9
+ endpointMetadata?: EndpointMetadata;
10
10
  }) => Promise<T>;
11
11
  };
12
12
  export {};
@@ -1,25 +1,27 @@
1
+ import { type LogConfig, type Logger } from "../logging/logger.js";
1
2
  import type { APIResponse } from "./APIResponse.js";
2
3
  import type { EndpointMetadata } from "./EndpointMetadata.js";
3
- import { EndpointSupplier } from "./EndpointSupplier.js";
4
4
  export type FetchFunction = <R = unknown>(args: Fetcher.Args) => Promise<APIResponse<R, Fetcher.Error>>;
5
5
  export declare namespace Fetcher {
6
6
  interface Args {
7
7
  url: string;
8
8
  method: string;
9
9
  contentType?: string;
10
- headers?: Record<string, string | EndpointSupplier<string | null | undefined> | null | undefined>;
10
+ headers?: Record<string, unknown>;
11
11
  queryParameters?: Record<string, unknown>;
12
12
  body?: unknown;
13
13
  timeoutMs?: number;
14
14
  maxRetries?: number;
15
15
  withCredentials?: boolean;
16
16
  abortSignal?: AbortSignal;
17
- requestType?: "json" | "file" | "bytes";
17
+ requestType?: "json" | "file" | "bytes" | "form" | "other";
18
18
  responseType?: "json" | "blob" | "sse" | "streaming" | "text" | "arrayBuffer" | "binary-response";
19
19
  duplex?: "half";
20
20
  endpointMetadata?: EndpointMetadata;
21
+ fetchFn?: typeof fetch;
22
+ logging?: LogConfig | Logger;
21
23
  }
22
- type Error = FailedStatusCodeError | NonJsonError | TimeoutError | UnknownError;
24
+ type Error = FailedStatusCodeError | NonJsonError | BodyIsNullError | TimeoutError | UnknownError;
23
25
  interface FailedStatusCodeError {
24
26
  reason: "status-code";
25
27
  statusCode: number;
@@ -30,6 +32,10 @@ export declare namespace Fetcher {
30
32
  statusCode: number;
31
33
  rawBody: string;
32
34
  }
35
+ interface BodyIsNullError {
36
+ reason: "body-is-null";
37
+ statusCode: number;
38
+ }
33
39
  interface TimeoutError {
34
40
  reason: "timeout";
35
41
  }
@@ -12,21 +12,159 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.fetcher = void 0;
13
13
  exports.fetcherImpl = fetcherImpl;
14
14
  const json_js_1 = require("../json.js");
15
+ const logger_js_1 = require("../logging/logger.js");
15
16
  const createRequestUrl_js_1 = require("./createRequestUrl.js");
16
17
  const EndpointSupplier_js_1 = require("./EndpointSupplier.js");
17
18
  const getErrorResponseBody_js_1 = require("./getErrorResponseBody.js");
18
19
  const getFetchFn_js_1 = require("./getFetchFn.js");
19
20
  const getRequestBody_js_1 = require("./getRequestBody.js");
20
21
  const getResponseBody_js_1 = require("./getResponseBody.js");
22
+ const Headers_js_1 = require("./Headers.js");
21
23
  const makeRequest_js_1 = require("./makeRequest.js");
22
24
  const RawResponse_js_1 = require("./RawResponse.js");
23
25
  const requestWithRetries_js_1 = require("./requestWithRetries.js");
26
+ const SENSITIVE_HEADERS = new Set([
27
+ "authorization",
28
+ "www-authenticate",
29
+ "x-api-key",
30
+ "api-key",
31
+ "apikey",
32
+ "x-api-token",
33
+ "x-auth-token",
34
+ "auth-token",
35
+ "cookie",
36
+ "set-cookie",
37
+ "proxy-authorization",
38
+ "proxy-authenticate",
39
+ "x-csrf-token",
40
+ "x-xsrf-token",
41
+ "x-session-token",
42
+ "x-access-token",
43
+ ]);
44
+ function redactHeaders(headers) {
45
+ const filtered = {};
46
+ for (const [key, value] of headers instanceof Headers_js_1.Headers ? headers.entries() : Object.entries(headers)) {
47
+ if (SENSITIVE_HEADERS.has(key.toLowerCase())) {
48
+ filtered[key] = "[REDACTED]";
49
+ }
50
+ else {
51
+ filtered[key] = value;
52
+ }
53
+ }
54
+ return filtered;
55
+ }
56
+ const SENSITIVE_QUERY_PARAMS = new Set([
57
+ "api_key",
58
+ "api-key",
59
+ "apikey",
60
+ "token",
61
+ "access_token",
62
+ "access-token",
63
+ "auth_token",
64
+ "auth-token",
65
+ "password",
66
+ "passwd",
67
+ "secret",
68
+ "api_secret",
69
+ "api-secret",
70
+ "apisecret",
71
+ "key",
72
+ "session",
73
+ "session_id",
74
+ "session-id",
75
+ ]);
76
+ function redactQueryParameters(queryParameters) {
77
+ if (queryParameters == null) {
78
+ return queryParameters;
79
+ }
80
+ const redacted = {};
81
+ for (const [key, value] of Object.entries(queryParameters)) {
82
+ if (SENSITIVE_QUERY_PARAMS.has(key.toLowerCase())) {
83
+ redacted[key] = "[REDACTED]";
84
+ }
85
+ else {
86
+ redacted[key] = value;
87
+ }
88
+ }
89
+ return redacted;
90
+ }
91
+ function redactUrl(url) {
92
+ const protocolIndex = url.indexOf("://");
93
+ if (protocolIndex === -1)
94
+ return url;
95
+ const afterProtocol = protocolIndex + 3;
96
+ // Find the first delimiter that marks the end of the authority section
97
+ const pathStart = url.indexOf("/", afterProtocol);
98
+ let queryStart = url.indexOf("?", afterProtocol);
99
+ let fragmentStart = url.indexOf("#", afterProtocol);
100
+ const firstDelimiter = Math.min(pathStart === -1 ? url.length : pathStart, queryStart === -1 ? url.length : queryStart, fragmentStart === -1 ? url.length : fragmentStart);
101
+ // Find the LAST @ before the delimiter (handles multiple @ in credentials)
102
+ let atIndex = -1;
103
+ for (let i = afterProtocol; i < firstDelimiter; i++) {
104
+ if (url[i] === "@") {
105
+ atIndex = i;
106
+ }
107
+ }
108
+ if (atIndex !== -1) {
109
+ url = `${url.slice(0, afterProtocol)}[REDACTED]@${url.slice(atIndex + 1)}`;
110
+ }
111
+ // Recalculate queryStart since url might have changed
112
+ queryStart = url.indexOf("?");
113
+ if (queryStart === -1)
114
+ return url;
115
+ fragmentStart = url.indexOf("#", queryStart);
116
+ const queryEnd = fragmentStart !== -1 ? fragmentStart : url.length;
117
+ const queryString = url.slice(queryStart + 1, queryEnd);
118
+ if (queryString.length === 0)
119
+ return url;
120
+ // FAST PATH: Quick check if any sensitive keywords present
121
+ // Using indexOf is faster than regex for simple substring matching
122
+ const lower = queryString.toLowerCase();
123
+ const hasSensitive = lower.includes("token") ||
124
+ lower.includes("key") ||
125
+ lower.includes("password") ||
126
+ lower.includes("passwd") ||
127
+ lower.includes("secret") ||
128
+ lower.includes("session") ||
129
+ lower.includes("auth");
130
+ if (!hasSensitive) {
131
+ return url;
132
+ }
133
+ // SLOW PATH: Parse and redact
134
+ const redactedParams = [];
135
+ const params = queryString.split("&");
136
+ for (const param of params) {
137
+ const equalIndex = param.indexOf("=");
138
+ if (equalIndex === -1) {
139
+ redactedParams.push(param);
140
+ continue;
141
+ }
142
+ const key = param.slice(0, equalIndex);
143
+ let shouldRedact = SENSITIVE_QUERY_PARAMS.has(key.toLowerCase());
144
+ if (!shouldRedact && key.includes("%")) {
145
+ try {
146
+ const decodedKey = decodeURIComponent(key);
147
+ shouldRedact = SENSITIVE_QUERY_PARAMS.has(decodedKey.toLowerCase());
148
+ }
149
+ catch (_a) { }
150
+ }
151
+ redactedParams.push(shouldRedact ? `${key}=[REDACTED]` : param);
152
+ }
153
+ return url.slice(0, queryStart + 1) + redactedParams.join("&") + url.slice(queryEnd);
154
+ }
24
155
  function getHeaders(args) {
25
156
  return __awaiter(this, void 0, void 0, function* () {
26
157
  var _a;
27
- const newHeaders = {};
158
+ const newHeaders = new Headers_js_1.Headers();
159
+ newHeaders.set("Accept", args.responseType === "json"
160
+ ? "application/json"
161
+ : args.responseType === "text"
162
+ ? "text/plain"
163
+ : args.responseType === "sse"
164
+ ? "text/event-stream"
165
+ : "*/*");
28
166
  if (args.body !== undefined && args.contentType != null) {
29
- newHeaders["Content-Type"] = args.contentType;
167
+ newHeaders.set("Content-Type", args.contentType);
30
168
  }
31
169
  if (args.headers == null) {
32
170
  return newHeaders;
@@ -34,39 +172,70 @@ function getHeaders(args) {
34
172
  for (const [key, value] of Object.entries(args.headers)) {
35
173
  const result = yield EndpointSupplier_js_1.EndpointSupplier.get(value, { endpointMetadata: (_a = args.endpointMetadata) !== null && _a !== void 0 ? _a : {} });
36
174
  if (typeof result === "string") {
37
- newHeaders[key] = result;
175
+ newHeaders.set(key, result);
38
176
  continue;
39
177
  }
40
178
  if (result == null) {
41
179
  continue;
42
180
  }
43
- newHeaders[key] = `${result}`;
181
+ newHeaders.set(key, `${result}`);
44
182
  }
45
183
  return newHeaders;
46
184
  });
47
185
  }
48
186
  function fetcherImpl(args) {
49
187
  return __awaiter(this, void 0, void 0, function* () {
50
- var _a;
188
+ var _a, _b, _c;
51
189
  const url = (0, createRequestUrl_js_1.createRequestUrl)(args.url, args.queryParameters);
52
190
  const requestBody = yield (0, getRequestBody_js_1.getRequestBody)({
53
191
  body: args.body,
54
- type: args.requestType === "json" ? "json" : "other",
192
+ type: (_a = args.requestType) !== null && _a !== void 0 ? _a : "other",
55
193
  });
56
- const fetchFn = yield (0, getFetchFn_js_1.getFetchFn)();
194
+ const fetchFn = (_b = args.fetchFn) !== null && _b !== void 0 ? _b : (yield (0, getFetchFn_js_1.getFetchFn)());
195
+ const headers = yield getHeaders(args);
196
+ const logger = (0, logger_js_1.createLogger)(args.logging);
197
+ if (logger.isDebug()) {
198
+ const metadata = {
199
+ method: args.method,
200
+ url: redactUrl(url),
201
+ headers: redactHeaders(headers),
202
+ queryParameters: redactQueryParameters(args.queryParameters),
203
+ hasBody: requestBody != null,
204
+ };
205
+ logger.debug("Making HTTP request", metadata);
206
+ }
57
207
  try {
58
208
  const response = yield (0, requestWithRetries_js_1.requestWithRetries)(() => __awaiter(this, void 0, void 0, function* () {
59
- return (0, makeRequest_js_1.makeRequest)(fetchFn, url, args.method, yield getHeaders(args), requestBody, args.timeoutMs, args.abortSignal, args.withCredentials, args.duplex);
209
+ return (0, makeRequest_js_1.makeRequest)(fetchFn, url, args.method, headers, requestBody, args.timeoutMs, args.abortSignal, args.withCredentials, args.duplex);
60
210
  }), args.maxRetries);
61
211
  if (response.status >= 200 && response.status < 400) {
212
+ if (logger.isDebug()) {
213
+ const metadata = {
214
+ method: args.method,
215
+ url: redactUrl(url),
216
+ statusCode: response.status,
217
+ responseHeaders: redactHeaders(response.headers),
218
+ };
219
+ logger.debug("HTTP request succeeded", metadata);
220
+ }
221
+ const body = yield (0, getResponseBody_js_1.getResponseBody)(response, args.responseType);
62
222
  return {
63
223
  ok: true,
64
- body: (yield (0, getResponseBody_js_1.getResponseBody)(response, args.responseType)),
224
+ body: body,
65
225
  headers: response.headers,
66
226
  rawResponse: (0, RawResponse_js_1.toRawResponse)(response),
67
227
  };
68
228
  }
69
229
  else {
230
+ if (logger.isError()) {
231
+ const metadata = {
232
+ method: args.method,
233
+ url: redactUrl(url),
234
+ statusCode: response.status,
235
+ responseHeaders: redactHeaders(Object.fromEntries(response.headers.entries())),
236
+ };
237
+ logger.error("HTTP request failed with error status", metadata);
238
+ }
70
239
  return {
71
240
  ok: false,
72
241
  error: {
@@ -79,7 +248,14 @@ function fetcherImpl(args) {
79
248
  }
80
249
  }
81
250
  catch (error) {
82
- if ((_a = args.abortSignal) === null || _a === void 0 ? void 0 : _a.aborted) {
251
+ if ((_c = args.abortSignal) === null || _c === void 0 ? void 0 : _c.aborted) {
252
+ if (logger.isError()) {
253
+ const metadata = {
254
+ method: args.method,
255
+ url: redactUrl(url),
256
+ };
257
+ logger.error("HTTP request was aborted", metadata);
258
+ }
83
259
  return {
84
260
  ok: false,
85
261
  error: {
@@ -90,6 +266,14 @@ function fetcherImpl(args) {
90
266
  };
91
267
  }
92
268
  else if (error instanceof Error && error.name === "AbortError") {
269
+ if (logger.isError()) {
270
+ const metadata = {
271
+ method: args.method,
272
+ url: redactUrl(url),
273
+ timeoutMs: args.timeoutMs,
274
+ };
275
+ logger.error("HTTP request timed out", metadata);
276
+ }
93
277
  return {
94
278
  ok: false,
95
279
  error: {
@@ -99,6 +283,14 @@ function fetcherImpl(args) {
99
283
  };
100
284
  }
101
285
  else if (error instanceof Error) {
286
+ if (logger.isError()) {
287
+ const metadata = {
288
+ method: args.method,
289
+ url: redactUrl(url),
290
+ errorMessage: error.message,
291
+ };
292
+ logger.error("HTTP request failed with error", metadata);
293
+ }
102
294
  return {
103
295
  ok: false,
104
296
  error: {
@@ -108,6 +300,14 @@ function fetcherImpl(args) {
108
300
  rawResponse: RawResponse_js_1.unknownRawResponse,
109
301
  };
110
302
  }
303
+ if (logger.isError()) {
304
+ const metadata = {
305
+ method: args.method,
306
+ url: redactUrl(url),
307
+ error: (0, json_js_1.toJson)(error),
308
+ };
309
+ logger.error("HTTP request failed with unknown error", metadata);
310
+ }
111
311
  return {
112
312
  ok: false,
113
313
  error: {
@@ -1,7 +1,7 @@
1
1
  export declare namespace GetRequestBody {
2
2
  interface Args {
3
3
  body: unknown;
4
- type: "json" | "file" | "bytes" | "other";
4
+ type: "json" | "file" | "bytes" | "form" | "other";
5
5
  }
6
6
  }
7
7
  export declare function getRequestBody({ body, type }: GetRequestBody.Args): Promise<BodyInit | undefined>;
@@ -11,8 +11,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.getRequestBody = getRequestBody;
13
13
  const json_js_1 = require("../json.js");
14
+ const qs_js_1 = require("../url/qs.js");
14
15
  function getRequestBody(_a) {
15
16
  return __awaiter(this, arguments, void 0, function* ({ body, type }) {
17
+ if (type === "form") {
18
+ return (0, qs_js_1.toQueryString)(body, { arrayFormat: "repeat", encode: true });
19
+ }
16
20
  if (type.includes("json")) {
17
21
  return (0, json_js_1.toJson)(body);
18
22
  }