@surgeapi/node 0.25.3

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 (326) hide show
  1. package/Client.d.ts +43 -0
  2. package/Client.js +37 -0
  3. package/LICENSE +21 -0
  4. package/README.md +171 -0
  5. package/api/errors/ConflictError.d.ts +8 -0
  6. package/api/errors/ConflictError.js +51 -0
  7. package/api/errors/UnprocessableEntityError.d.ts +8 -0
  8. package/api/errors/UnprocessableEntityError.js +51 -0
  9. package/api/errors/index.d.ts +2 -0
  10. package/api/errors/index.js +18 -0
  11. package/api/index.d.ts +3 -0
  12. package/api/index.js +19 -0
  13. package/api/resources/blasts/client/Client.d.ts +50 -0
  14. package/api/resources/blasts/client/Client.js +123 -0
  15. package/api/resources/blasts/client/index.d.ts +1 -0
  16. package/api/resources/blasts/client/index.js +17 -0
  17. package/api/resources/blasts/client/requests/BlastRequest.d.ts +30 -0
  18. package/api/resources/blasts/client/requests/BlastRequest.js +5 -0
  19. package/api/resources/blasts/client/requests/index.d.ts +1 -0
  20. package/api/resources/blasts/client/requests/index.js +2 -0
  21. package/api/resources/blasts/index.d.ts +1 -0
  22. package/api/resources/blasts/index.js +17 -0
  23. package/api/resources/contacts/client/Client.d.ts +78 -0
  24. package/api/resources/contacts/client/Client.js +224 -0
  25. package/api/resources/contacts/client/index.d.ts +1 -0
  26. package/api/resources/contacts/client/index.js +2 -0
  27. package/api/resources/contacts/index.d.ts +1 -0
  28. package/api/resources/contacts/index.js +17 -0
  29. package/api/resources/index.d.ts +9 -0
  30. package/api/resources/index.js +48 -0
  31. package/api/resources/messages/client/Client.d.ts +55 -0
  32. package/api/resources/messages/client/Client.js +128 -0
  33. package/api/resources/messages/client/index.d.ts +1 -0
  34. package/api/resources/messages/client/index.js +17 -0
  35. package/api/resources/messages/client/requests/MessageRequest.d.ts +28 -0
  36. package/api/resources/messages/client/requests/MessageRequest.js +5 -0
  37. package/api/resources/messages/client/requests/index.d.ts +1 -0
  38. package/api/resources/messages/client/requests/index.js +2 -0
  39. package/api/resources/messages/index.d.ts +1 -0
  40. package/api/resources/messages/index.js +17 -0
  41. package/api/resources/users/client/Client.d.ts +59 -0
  42. package/api/resources/users/client/Client.js +168 -0
  43. package/api/resources/users/client/index.d.ts +1 -0
  44. package/api/resources/users/client/index.js +17 -0
  45. package/api/resources/users/client/requests/UserRequest.d.ts +25 -0
  46. package/api/resources/users/client/requests/UserRequest.js +5 -0
  47. package/api/resources/users/client/requests/index.d.ts +1 -0
  48. package/api/resources/users/client/requests/index.js +2 -0
  49. package/api/resources/users/index.d.ts +1 -0
  50. package/api/resources/users/index.js +17 -0
  51. package/api/resources/verifications/client/Client.d.ts +58 -0
  52. package/api/resources/verifications/client/Client.js +176 -0
  53. package/api/resources/verifications/client/index.d.ts +1 -0
  54. package/api/resources/verifications/client/index.js +17 -0
  55. package/api/resources/verifications/client/requests/VerificationCheckRequest.d.ts +13 -0
  56. package/api/resources/verifications/client/requests/VerificationCheckRequest.js +5 -0
  57. package/api/resources/verifications/client/requests/VerificationRequest.d.ts +13 -0
  58. package/api/resources/verifications/client/requests/VerificationRequest.js +5 -0
  59. package/api/resources/verifications/client/requests/index.d.ts +2 -0
  60. package/api/resources/verifications/client/requests/index.js +2 -0
  61. package/api/resources/verifications/index.d.ts +1 -0
  62. package/api/resources/verifications/index.js +17 -0
  63. package/api/types/AttachmentParams.d.ts +10 -0
  64. package/api/types/AttachmentParams.js +5 -0
  65. package/api/types/AttachmentResponse.d.ts +14 -0
  66. package/api/types/AttachmentResponse.js +5 -0
  67. package/api/types/BlastResponse.d.ts +18 -0
  68. package/api/types/BlastResponse.js +5 -0
  69. package/api/types/BlastResponseAttachmentsItem.d.ts +7 -0
  70. package/api/types/BlastResponseAttachmentsItem.js +5 -0
  71. package/api/types/Contact.d.ts +16 -0
  72. package/api/types/Contact.js +5 -0
  73. package/api/types/ContactRequest.d.ts +18 -0
  74. package/api/types/ContactRequest.js +5 -0
  75. package/api/types/ContactResponse.d.ts +20 -0
  76. package/api/types/ContactResponse.js +5 -0
  77. package/api/types/Conversation.d.ts +12 -0
  78. package/api/types/Conversation.js +5 -0
  79. package/api/types/MessageConversationContactParams.d.ts +16 -0
  80. package/api/types/MessageConversationContactParams.js +5 -0
  81. package/api/types/MessageConversationParams.d.ts +12 -0
  82. package/api/types/MessageConversationParams.js +5 -0
  83. package/api/types/MessageResponse.d.ts +15 -0
  84. package/api/types/MessageResponse.js +5 -0
  85. package/api/types/UserResponse.d.ts +18 -0
  86. package/api/types/UserResponse.js +5 -0
  87. package/api/types/Verification.d.ts +17 -0
  88. package/api/types/Verification.js +5 -0
  89. package/api/types/VerificationCheckAlreadyVerifiedResponse.d.ts +12 -0
  90. package/api/types/VerificationCheckAlreadyVerifiedResponse.js +5 -0
  91. package/api/types/VerificationCheckAlreadyVerifiedResponseResult.d.ts +14 -0
  92. package/api/types/VerificationCheckAlreadyVerifiedResponseResult.js +13 -0
  93. package/api/types/VerificationCheckIncorrectResponse.d.ts +12 -0
  94. package/api/types/VerificationCheckIncorrectResponse.js +5 -0
  95. package/api/types/VerificationCheckIncorrectResponseResult.d.ts +12 -0
  96. package/api/types/VerificationCheckIncorrectResponseResult.js +11 -0
  97. package/api/types/VerificationCheckOkResponse.d.ts +21 -0
  98. package/api/types/VerificationCheckOkResponse.js +5 -0
  99. package/api/types/VerificationCheckOkResponseResult.d.ts +21 -0
  100. package/api/types/VerificationCheckOkResponseResult.js +13 -0
  101. package/api/types/VerificationStatus.d.ts +13 -0
  102. package/api/types/VerificationStatus.js +12 -0
  103. package/api/types/index.d.ts +20 -0
  104. package/api/types/index.js +36 -0
  105. package/core/auth/BasicAuth.d.ts +8 -0
  106. package/core/auth/BasicAuth.js +26 -0
  107. package/core/auth/BearerToken.d.ts +5 -0
  108. package/core/auth/BearerToken.js +15 -0
  109. package/core/auth/index.d.ts +2 -0
  110. package/core/auth/index.js +7 -0
  111. package/core/fetcher/APIResponse.d.ts +10 -0
  112. package/core/fetcher/APIResponse.js +2 -0
  113. package/core/fetcher/Fetcher.d.ts +39 -0
  114. package/core/fetcher/Fetcher.js +100 -0
  115. package/core/fetcher/Supplier.d.ts +4 -0
  116. package/core/fetcher/Supplier.js +22 -0
  117. package/core/fetcher/createRequestUrl.d.ts +1 -0
  118. package/core/fetcher/createRequestUrl.js +12 -0
  119. package/core/fetcher/getFetchFn.d.ts +4 -0
  120. package/core/fetcher/getFetchFn.js +68 -0
  121. package/core/fetcher/getHeader.d.ts +1 -0
  122. package/core/fetcher/getHeader.js +11 -0
  123. package/core/fetcher/getRequestBody.d.ts +7 -0
  124. package/core/fetcher/getRequestBody.js +23 -0
  125. package/core/fetcher/getResponseBody.d.ts +1 -0
  126. package/core/fetcher/getResponseBody.js +54 -0
  127. package/core/fetcher/index.d.ts +5 -0
  128. package/core/fetcher/index.js +9 -0
  129. package/core/fetcher/makeRequest.d.ts +1 -0
  130. package/core/fetcher/makeRequest.js +42 -0
  131. package/core/fetcher/requestWithRetries.d.ts +1 -0
  132. package/core/fetcher/requestWithRetries.js +40 -0
  133. package/core/fetcher/signals.d.ts +11 -0
  134. package/core/fetcher/signals.js +36 -0
  135. package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
  136. package/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
  137. package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +21 -0
  138. package/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +126 -0
  139. package/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
  140. package/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
  141. package/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
  142. package/core/fetcher/stream-wrappers/chooseStreamWrapper.js +59 -0
  143. package/core/index.d.ts +3 -0
  144. package/core/index.js +19 -0
  145. package/core/json.d.ts +15 -0
  146. package/core/json.js +24 -0
  147. package/core/runtime/index.d.ts +1 -0
  148. package/core/runtime/index.js +5 -0
  149. package/core/runtime/runtime.d.ts +9 -0
  150. package/core/runtime/runtime.js +103 -0
  151. package/dist/Client.d.ts +43 -0
  152. package/dist/Client.js +37 -0
  153. package/dist/api/errors/ConflictError.d.ts +8 -0
  154. package/dist/api/errors/ConflictError.js +51 -0
  155. package/dist/api/errors/UnprocessableEntityError.d.ts +8 -0
  156. package/dist/api/errors/UnprocessableEntityError.js +51 -0
  157. package/dist/api/errors/index.d.ts +2 -0
  158. package/dist/api/errors/index.js +18 -0
  159. package/dist/api/index.d.ts +3 -0
  160. package/dist/api/index.js +19 -0
  161. package/dist/api/resources/blasts/client/Client.d.ts +50 -0
  162. package/dist/api/resources/blasts/client/Client.js +123 -0
  163. package/dist/api/resources/blasts/client/index.d.ts +1 -0
  164. package/dist/api/resources/blasts/client/index.js +17 -0
  165. package/dist/api/resources/blasts/client/requests/BlastRequest.d.ts +30 -0
  166. package/dist/api/resources/blasts/client/requests/BlastRequest.js +5 -0
  167. package/dist/api/resources/blasts/client/requests/index.d.ts +1 -0
  168. package/dist/api/resources/blasts/client/requests/index.js +2 -0
  169. package/dist/api/resources/blasts/index.d.ts +1 -0
  170. package/dist/api/resources/blasts/index.js +17 -0
  171. package/dist/api/resources/contacts/client/Client.d.ts +78 -0
  172. package/dist/api/resources/contacts/client/Client.js +224 -0
  173. package/dist/api/resources/contacts/client/index.d.ts +1 -0
  174. package/dist/api/resources/contacts/client/index.js +2 -0
  175. package/dist/api/resources/contacts/index.d.ts +1 -0
  176. package/dist/api/resources/contacts/index.js +17 -0
  177. package/dist/api/resources/index.d.ts +9 -0
  178. package/dist/api/resources/index.js +48 -0
  179. package/dist/api/resources/messages/client/Client.d.ts +55 -0
  180. package/dist/api/resources/messages/client/Client.js +128 -0
  181. package/dist/api/resources/messages/client/index.d.ts +1 -0
  182. package/dist/api/resources/messages/client/index.js +17 -0
  183. package/dist/api/resources/messages/client/requests/MessageRequest.d.ts +28 -0
  184. package/dist/api/resources/messages/client/requests/MessageRequest.js +5 -0
  185. package/dist/api/resources/messages/client/requests/index.d.ts +1 -0
  186. package/dist/api/resources/messages/client/requests/index.js +2 -0
  187. package/dist/api/resources/messages/index.d.ts +1 -0
  188. package/dist/api/resources/messages/index.js +17 -0
  189. package/dist/api/resources/users/client/Client.d.ts +59 -0
  190. package/dist/api/resources/users/client/Client.js +168 -0
  191. package/dist/api/resources/users/client/index.d.ts +1 -0
  192. package/dist/api/resources/users/client/index.js +17 -0
  193. package/dist/api/resources/users/client/requests/UserRequest.d.ts +25 -0
  194. package/dist/api/resources/users/client/requests/UserRequest.js +5 -0
  195. package/dist/api/resources/users/client/requests/index.d.ts +1 -0
  196. package/dist/api/resources/users/client/requests/index.js +2 -0
  197. package/dist/api/resources/users/index.d.ts +1 -0
  198. package/dist/api/resources/users/index.js +17 -0
  199. package/dist/api/resources/verifications/client/Client.d.ts +58 -0
  200. package/dist/api/resources/verifications/client/Client.js +176 -0
  201. package/dist/api/resources/verifications/client/index.d.ts +1 -0
  202. package/dist/api/resources/verifications/client/index.js +17 -0
  203. package/dist/api/resources/verifications/client/requests/VerificationCheckRequest.d.ts +13 -0
  204. package/dist/api/resources/verifications/client/requests/VerificationCheckRequest.js +5 -0
  205. package/dist/api/resources/verifications/client/requests/VerificationRequest.d.ts +13 -0
  206. package/dist/api/resources/verifications/client/requests/VerificationRequest.js +5 -0
  207. package/dist/api/resources/verifications/client/requests/index.d.ts +2 -0
  208. package/dist/api/resources/verifications/client/requests/index.js +2 -0
  209. package/dist/api/resources/verifications/index.d.ts +1 -0
  210. package/dist/api/resources/verifications/index.js +17 -0
  211. package/dist/api/types/AttachmentParams.d.ts +10 -0
  212. package/dist/api/types/AttachmentParams.js +5 -0
  213. package/dist/api/types/AttachmentResponse.d.ts +14 -0
  214. package/dist/api/types/AttachmentResponse.js +5 -0
  215. package/dist/api/types/BlastResponse.d.ts +18 -0
  216. package/dist/api/types/BlastResponse.js +5 -0
  217. package/dist/api/types/BlastResponseAttachmentsItem.d.ts +7 -0
  218. package/dist/api/types/BlastResponseAttachmentsItem.js +5 -0
  219. package/dist/api/types/Contact.d.ts +16 -0
  220. package/dist/api/types/Contact.js +5 -0
  221. package/dist/api/types/ContactRequest.d.ts +18 -0
  222. package/dist/api/types/ContactRequest.js +5 -0
  223. package/dist/api/types/ContactResponse.d.ts +20 -0
  224. package/dist/api/types/ContactResponse.js +5 -0
  225. package/dist/api/types/Conversation.d.ts +12 -0
  226. package/dist/api/types/Conversation.js +5 -0
  227. package/dist/api/types/MessageConversationContactParams.d.ts +16 -0
  228. package/dist/api/types/MessageConversationContactParams.js +5 -0
  229. package/dist/api/types/MessageConversationParams.d.ts +12 -0
  230. package/dist/api/types/MessageConversationParams.js +5 -0
  231. package/dist/api/types/MessageResponse.d.ts +15 -0
  232. package/dist/api/types/MessageResponse.js +5 -0
  233. package/dist/api/types/UserResponse.d.ts +18 -0
  234. package/dist/api/types/UserResponse.js +5 -0
  235. package/dist/api/types/Verification.d.ts +17 -0
  236. package/dist/api/types/Verification.js +5 -0
  237. package/dist/api/types/VerificationCheckAlreadyVerifiedResponse.d.ts +12 -0
  238. package/dist/api/types/VerificationCheckAlreadyVerifiedResponse.js +5 -0
  239. package/dist/api/types/VerificationCheckAlreadyVerifiedResponseResult.d.ts +14 -0
  240. package/dist/api/types/VerificationCheckAlreadyVerifiedResponseResult.js +13 -0
  241. package/dist/api/types/VerificationCheckIncorrectResponse.d.ts +12 -0
  242. package/dist/api/types/VerificationCheckIncorrectResponse.js +5 -0
  243. package/dist/api/types/VerificationCheckIncorrectResponseResult.d.ts +12 -0
  244. package/dist/api/types/VerificationCheckIncorrectResponseResult.js +11 -0
  245. package/dist/api/types/VerificationCheckOkResponse.d.ts +21 -0
  246. package/dist/api/types/VerificationCheckOkResponse.js +5 -0
  247. package/dist/api/types/VerificationCheckOkResponseResult.d.ts +21 -0
  248. package/dist/api/types/VerificationCheckOkResponseResult.js +13 -0
  249. package/dist/api/types/VerificationStatus.d.ts +13 -0
  250. package/dist/api/types/VerificationStatus.js +12 -0
  251. package/dist/api/types/index.d.ts +20 -0
  252. package/dist/api/types/index.js +36 -0
  253. package/dist/core/auth/BasicAuth.d.ts +8 -0
  254. package/dist/core/auth/BasicAuth.js +26 -0
  255. package/dist/core/auth/BearerToken.d.ts +5 -0
  256. package/dist/core/auth/BearerToken.js +15 -0
  257. package/dist/core/auth/index.d.ts +2 -0
  258. package/dist/core/auth/index.js +7 -0
  259. package/dist/core/fetcher/APIResponse.d.ts +10 -0
  260. package/dist/core/fetcher/APIResponse.js +2 -0
  261. package/dist/core/fetcher/Fetcher.d.ts +39 -0
  262. package/dist/core/fetcher/Fetcher.js +100 -0
  263. package/dist/core/fetcher/Supplier.d.ts +4 -0
  264. package/dist/core/fetcher/Supplier.js +22 -0
  265. package/dist/core/fetcher/createRequestUrl.d.ts +1 -0
  266. package/dist/core/fetcher/createRequestUrl.js +12 -0
  267. package/dist/core/fetcher/getFetchFn.d.ts +4 -0
  268. package/dist/core/fetcher/getFetchFn.js +68 -0
  269. package/dist/core/fetcher/getHeader.d.ts +1 -0
  270. package/dist/core/fetcher/getHeader.js +11 -0
  271. package/dist/core/fetcher/getRequestBody.d.ts +7 -0
  272. package/dist/core/fetcher/getRequestBody.js +23 -0
  273. package/dist/core/fetcher/getResponseBody.d.ts +1 -0
  274. package/dist/core/fetcher/getResponseBody.js +54 -0
  275. package/dist/core/fetcher/index.d.ts +5 -0
  276. package/dist/core/fetcher/index.js +9 -0
  277. package/dist/core/fetcher/makeRequest.d.ts +1 -0
  278. package/dist/core/fetcher/makeRequest.js +42 -0
  279. package/dist/core/fetcher/requestWithRetries.d.ts +1 -0
  280. package/dist/core/fetcher/requestWithRetries.js +40 -0
  281. package/dist/core/fetcher/signals.d.ts +11 -0
  282. package/dist/core/fetcher/signals.js +36 -0
  283. package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.d.ts +30 -0
  284. package/dist/core/fetcher/stream-wrappers/Node18UniversalStreamWrapper.js +247 -0
  285. package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.d.ts +21 -0
  286. package/dist/core/fetcher/stream-wrappers/NodePre18StreamWrapper.js +126 -0
  287. package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.d.ts +31 -0
  288. package/dist/core/fetcher/stream-wrappers/UndiciStreamWrapper.js +229 -0
  289. package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.d.ts +18 -0
  290. package/dist/core/fetcher/stream-wrappers/chooseStreamWrapper.js +59 -0
  291. package/dist/core/index.d.ts +3 -0
  292. package/dist/core/index.js +19 -0
  293. package/dist/core/json.d.ts +15 -0
  294. package/dist/core/json.js +24 -0
  295. package/dist/core/runtime/index.d.ts +1 -0
  296. package/dist/core/runtime/index.js +5 -0
  297. package/dist/core/runtime/runtime.d.ts +9 -0
  298. package/dist/core/runtime/runtime.js +103 -0
  299. package/dist/environments.d.ts +7 -0
  300. package/dist/environments.js +9 -0
  301. package/dist/errors/SurgeError.d.ts +12 -0
  302. package/dist/errors/SurgeError.js +33 -0
  303. package/dist/errors/SurgeTimeoutError.d.ts +6 -0
  304. package/dist/errors/SurgeTimeoutError.js +13 -0
  305. package/dist/errors/index.d.ts +2 -0
  306. package/dist/errors/index.js +7 -0
  307. package/dist/index.d.ts +4 -0
  308. package/dist/index.js +44 -0
  309. package/dist/version.d.ts +1 -0
  310. package/dist/version.js +4 -0
  311. package/environments.d.ts +7 -0
  312. package/environments.js +9 -0
  313. package/errors/SurgeError.d.ts +12 -0
  314. package/errors/SurgeError.js +33 -0
  315. package/errors/SurgeTimeoutError.d.ts +6 -0
  316. package/errors/SurgeTimeoutError.js +13 -0
  317. package/errors/index.d.ts +2 -0
  318. package/errors/index.js +7 -0
  319. package/index.d.ts +4 -0
  320. package/index.js +44 -0
  321. package/jest.config.mjs +8 -0
  322. package/package.json +44 -0
  323. package/reference.md +681 -0
  324. package/scripts/rename-to-esm-files.js +115 -0
  325. package/version.d.ts +1 -0
  326. package/version.js +4 -0
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Supplier = exports.getHeader = exports.fetcher = void 0;
4
+ var Fetcher_1 = require("./Fetcher");
5
+ Object.defineProperty(exports, "fetcher", { enumerable: true, get: function () { return Fetcher_1.fetcher; } });
6
+ var getHeader_1 = require("./getHeader");
7
+ Object.defineProperty(exports, "getHeader", { enumerable: true, get: function () { return getHeader_1.getHeader; } });
8
+ var Supplier_1 = require("./Supplier");
9
+ Object.defineProperty(exports, "Supplier", { enumerable: true, get: function () { return Supplier_1.Supplier; } });
@@ -0,0 +1 @@
1
+ export declare const makeRequest: (fetchFn: (url: string, init: RequestInit) => Promise<Response>, url: string, method: string, headers: Record<string, string>, requestBody: BodyInit | undefined, timeoutMs?: number, abortSignal?: AbortSignal, withCredentials?: boolean, duplex?: "half") => Promise<Response>;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.makeRequest = void 0;
13
+ const signals_1 = require("./signals");
14
+ const makeRequest = (fetchFn, url, method, headers, requestBody, timeoutMs, abortSignal, withCredentials, duplex) => __awaiter(void 0, void 0, void 0, function* () {
15
+ const signals = [];
16
+ // Add timeout signal
17
+ let timeoutAbortId = undefined;
18
+ if (timeoutMs != null) {
19
+ const { signal, abortId } = (0, signals_1.getTimeoutSignal)(timeoutMs);
20
+ timeoutAbortId = abortId;
21
+ signals.push(signal);
22
+ }
23
+ // Add arbitrary signal
24
+ if (abortSignal != null) {
25
+ signals.push(abortSignal);
26
+ }
27
+ let newSignals = (0, signals_1.anySignal)(signals);
28
+ const response = yield fetchFn(url, {
29
+ method: method,
30
+ headers,
31
+ body: requestBody,
32
+ signal: newSignals,
33
+ credentials: withCredentials ? "include" : undefined,
34
+ // @ts-ignore
35
+ duplex,
36
+ });
37
+ if (timeoutAbortId != null) {
38
+ clearTimeout(timeoutAbortId);
39
+ }
40
+ return response;
41
+ });
42
+ exports.makeRequest = makeRequest;
@@ -0,0 +1 @@
1
+ export declare function requestWithRetries(requestFn: () => Promise<Response>, maxRetries?: number): Promise<Response>;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.requestWithRetries = requestWithRetries;
13
+ const INITIAL_RETRY_DELAY = 1000; // in milliseconds
14
+ const MAX_RETRY_DELAY = 60000; // in milliseconds
15
+ const DEFAULT_MAX_RETRIES = 2;
16
+ const JITTER_FACTOR = 0.2; // 20% random jitter
17
+ function addJitter(delay) {
18
+ // Generate a random value between -JITTER_FACTOR and +JITTER_FACTOR
19
+ const jitterMultiplier = 1 + (Math.random() * 2 - 1) * JITTER_FACTOR;
20
+ return delay * jitterMultiplier;
21
+ }
22
+ function requestWithRetries(requestFn_1) {
23
+ return __awaiter(this, arguments, void 0, function* (requestFn, maxRetries = DEFAULT_MAX_RETRIES) {
24
+ let response = yield requestFn();
25
+ for (let i = 0; i < maxRetries; ++i) {
26
+ if ([408, 429].includes(response.status) || response.status >= 500) {
27
+ // Calculate base delay using exponential backoff (in milliseconds)
28
+ const baseDelay = Math.min(INITIAL_RETRY_DELAY * Math.pow(2, i), MAX_RETRY_DELAY);
29
+ // Add jitter to the delay
30
+ const delayWithJitter = addJitter(baseDelay);
31
+ yield new Promise((resolve) => setTimeout(resolve, delayWithJitter));
32
+ response = yield requestFn();
33
+ }
34
+ else {
35
+ break;
36
+ }
37
+ }
38
+ return response;
39
+ });
40
+ }
@@ -0,0 +1,11 @@
1
+ export declare function getTimeoutSignal(timeoutMs: number): {
2
+ signal: AbortSignal;
3
+ abortId: NodeJS.Timeout;
4
+ };
5
+ /**
6
+ * Returns an abort signal that is getting aborted when
7
+ * at least one of the specified abort signals is aborted.
8
+ *
9
+ * Requires at least node.js 18.
10
+ */
11
+ export declare function anySignal(...args: AbortSignal[] | [AbortSignal[]]): AbortSignal;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTimeoutSignal = getTimeoutSignal;
4
+ exports.anySignal = anySignal;
5
+ const TIMEOUT = "timeout";
6
+ function getTimeoutSignal(timeoutMs) {
7
+ const controller = new AbortController();
8
+ const abortId = setTimeout(() => controller.abort(TIMEOUT), timeoutMs);
9
+ return { signal: controller.signal, abortId };
10
+ }
11
+ /**
12
+ * Returns an abort signal that is getting aborted when
13
+ * at least one of the specified abort signals is aborted.
14
+ *
15
+ * Requires at least node.js 18.
16
+ */
17
+ function anySignal(...args) {
18
+ // Allowing signals to be passed either as array
19
+ // of signals or as multiple arguments.
20
+ const signals = (args.length === 1 && Array.isArray(args[0]) ? args[0] : args);
21
+ const controller = new AbortController();
22
+ for (const signal of signals) {
23
+ if (signal.aborted) {
24
+ // Exiting early if one of the signals
25
+ // is already aborted.
26
+ controller.abort(signal === null || signal === void 0 ? void 0 : signal.reason);
27
+ break;
28
+ }
29
+ // Listening for signals and removing the listeners
30
+ // when at least one symbol is aborted.
31
+ signal.addEventListener("abort", () => controller.abort(signal === null || signal === void 0 ? void 0 : signal.reason), {
32
+ signal: controller.signal,
33
+ });
34
+ }
35
+ return controller.signal;
36
+ }
@@ -0,0 +1,30 @@
1
+ import type { Writable } from "readable-stream";
2
+ import { EventCallback, StreamWrapper } from "./chooseStreamWrapper";
3
+ export declare class Node18UniversalStreamWrapper<ReadFormat extends Uint8Array | Uint16Array | Uint32Array> implements StreamWrapper<Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>, ReadFormat> {
4
+ private readableStream;
5
+ private reader;
6
+ private events;
7
+ private paused;
8
+ private resumeCallback;
9
+ private encoding;
10
+ constructor(readableStream: ReadableStream<ReadFormat>);
11
+ on(event: string, callback: EventCallback): void;
12
+ off(event: string, callback: EventCallback): void;
13
+ pipe(dest: Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>): Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>;
14
+ pipeTo(dest: Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>): Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>;
15
+ unpipe(dest: Node18UniversalStreamWrapper<ReadFormat> | Writable | WritableStream<ReadFormat>): void;
16
+ destroy(error?: Error): void;
17
+ pause(): void;
18
+ resume(): void;
19
+ get isPaused(): boolean;
20
+ read(): Promise<ReadFormat | undefined>;
21
+ setEncoding(encoding: string): void;
22
+ text(): Promise<string>;
23
+ json<T>(): Promise<T>;
24
+ private _write;
25
+ private _end;
26
+ private _error;
27
+ private _emit;
28
+ private _startReading;
29
+ [Symbol.asyncIterator](): AsyncIterableIterator<ReadFormat>;
30
+ }
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Node18UniversalStreamWrapper = void 0;
13
+ class Node18UniversalStreamWrapper {
14
+ constructor(readableStream) {
15
+ this.readableStream = readableStream;
16
+ this.reader = this.readableStream.getReader();
17
+ this.events = {
18
+ data: [],
19
+ end: [],
20
+ error: [],
21
+ readable: [],
22
+ close: [],
23
+ pause: [],
24
+ resume: [],
25
+ };
26
+ this.paused = false;
27
+ this.resumeCallback = null;
28
+ this.encoding = null;
29
+ }
30
+ on(event, callback) {
31
+ var _a;
32
+ (_a = this.events[event]) === null || _a === void 0 ? void 0 : _a.push(callback);
33
+ }
34
+ off(event, callback) {
35
+ var _a;
36
+ this.events[event] = (_a = this.events[event]) === null || _a === void 0 ? void 0 : _a.filter((cb) => cb !== callback);
37
+ }
38
+ pipe(dest) {
39
+ this.on("data", (chunk) => __awaiter(this, void 0, void 0, function* () {
40
+ if (dest instanceof Node18UniversalStreamWrapper) {
41
+ dest._write(chunk);
42
+ }
43
+ else if (dest instanceof WritableStream) {
44
+ const writer = dest.getWriter();
45
+ writer.write(chunk).then(() => writer.releaseLock());
46
+ }
47
+ else {
48
+ dest.write(chunk);
49
+ }
50
+ }));
51
+ this.on("end", () => __awaiter(this, void 0, void 0, function* () {
52
+ if (dest instanceof Node18UniversalStreamWrapper) {
53
+ dest._end();
54
+ }
55
+ else if (dest instanceof WritableStream) {
56
+ const writer = dest.getWriter();
57
+ writer.close();
58
+ }
59
+ else {
60
+ dest.end();
61
+ }
62
+ }));
63
+ this.on("error", (error) => __awaiter(this, void 0, void 0, function* () {
64
+ if (dest instanceof Node18UniversalStreamWrapper) {
65
+ dest._error(error);
66
+ }
67
+ else if (dest instanceof WritableStream) {
68
+ const writer = dest.getWriter();
69
+ writer.abort(error);
70
+ }
71
+ else {
72
+ dest.destroy(error);
73
+ }
74
+ }));
75
+ this._startReading();
76
+ return dest;
77
+ }
78
+ pipeTo(dest) {
79
+ return this.pipe(dest);
80
+ }
81
+ unpipe(dest) {
82
+ this.off("data", (chunk) => __awaiter(this, void 0, void 0, function* () {
83
+ if (dest instanceof Node18UniversalStreamWrapper) {
84
+ dest._write(chunk);
85
+ }
86
+ else if (dest instanceof WritableStream) {
87
+ const writer = dest.getWriter();
88
+ writer.write(chunk).then(() => writer.releaseLock());
89
+ }
90
+ else {
91
+ dest.write(chunk);
92
+ }
93
+ }));
94
+ this.off("end", () => __awaiter(this, void 0, void 0, function* () {
95
+ if (dest instanceof Node18UniversalStreamWrapper) {
96
+ dest._end();
97
+ }
98
+ else if (dest instanceof WritableStream) {
99
+ const writer = dest.getWriter();
100
+ writer.close();
101
+ }
102
+ else {
103
+ dest.end();
104
+ }
105
+ }));
106
+ this.off("error", (error) => __awaiter(this, void 0, void 0, function* () {
107
+ if (dest instanceof Node18UniversalStreamWrapper) {
108
+ dest._error(error);
109
+ }
110
+ else if (dest instanceof WritableStream) {
111
+ const writer = dest.getWriter();
112
+ writer.abort(error);
113
+ }
114
+ else {
115
+ dest.destroy(error);
116
+ }
117
+ }));
118
+ }
119
+ destroy(error) {
120
+ this.reader
121
+ .cancel(error)
122
+ .then(() => {
123
+ this._emit("close");
124
+ })
125
+ .catch((err) => {
126
+ this._emit("error", err);
127
+ });
128
+ }
129
+ pause() {
130
+ this.paused = true;
131
+ this._emit("pause");
132
+ }
133
+ resume() {
134
+ if (this.paused) {
135
+ this.paused = false;
136
+ this._emit("resume");
137
+ if (this.resumeCallback) {
138
+ this.resumeCallback();
139
+ this.resumeCallback = null;
140
+ }
141
+ }
142
+ }
143
+ get isPaused() {
144
+ return this.paused;
145
+ }
146
+ read() {
147
+ return __awaiter(this, void 0, void 0, function* () {
148
+ if (this.paused) {
149
+ yield new Promise((resolve) => {
150
+ this.resumeCallback = resolve;
151
+ });
152
+ }
153
+ const { done, value } = yield this.reader.read();
154
+ if (done) {
155
+ return undefined;
156
+ }
157
+ return value;
158
+ });
159
+ }
160
+ setEncoding(encoding) {
161
+ this.encoding = encoding;
162
+ }
163
+ text() {
164
+ return __awaiter(this, void 0, void 0, function* () {
165
+ const chunks = [];
166
+ while (true) {
167
+ const { done, value } = yield this.reader.read();
168
+ if (done) {
169
+ break;
170
+ }
171
+ if (value) {
172
+ chunks.push(value);
173
+ }
174
+ }
175
+ const decoder = new TextDecoder(this.encoding || "utf-8");
176
+ return decoder.decode(yield new Blob(chunks).arrayBuffer());
177
+ });
178
+ }
179
+ json() {
180
+ return __awaiter(this, void 0, void 0, function* () {
181
+ const text = yield this.text();
182
+ return JSON.parse(text);
183
+ });
184
+ }
185
+ _write(chunk) {
186
+ this._emit("data", chunk);
187
+ }
188
+ _end() {
189
+ this._emit("end");
190
+ }
191
+ _error(error) {
192
+ this._emit("error", error);
193
+ }
194
+ _emit(event, data) {
195
+ if (this.events[event]) {
196
+ for (const callback of this.events[event] || []) {
197
+ callback(data);
198
+ }
199
+ }
200
+ }
201
+ _startReading() {
202
+ return __awaiter(this, void 0, void 0, function* () {
203
+ try {
204
+ this._emit("readable");
205
+ while (true) {
206
+ if (this.paused) {
207
+ yield new Promise((resolve) => {
208
+ this.resumeCallback = resolve;
209
+ });
210
+ }
211
+ const { done, value } = yield this.reader.read();
212
+ if (done) {
213
+ this._emit("end");
214
+ this._emit("close");
215
+ break;
216
+ }
217
+ if (value) {
218
+ this._emit("data", value);
219
+ }
220
+ }
221
+ }
222
+ catch (error) {
223
+ this._emit("error", error);
224
+ }
225
+ });
226
+ }
227
+ [Symbol.asyncIterator]() {
228
+ return {
229
+ next: () => __awaiter(this, void 0, void 0, function* () {
230
+ if (this.paused) {
231
+ yield new Promise((resolve) => {
232
+ this.resumeCallback = resolve;
233
+ });
234
+ }
235
+ const { done, value } = yield this.reader.read();
236
+ if (done) {
237
+ return { done: true, value: undefined };
238
+ }
239
+ return { done: false, value };
240
+ }),
241
+ [Symbol.asyncIterator]() {
242
+ return this;
243
+ },
244
+ };
245
+ }
246
+ }
247
+ exports.Node18UniversalStreamWrapper = Node18UniversalStreamWrapper;
@@ -0,0 +1,21 @@
1
+ import type { Readable, Writable } from "readable-stream";
2
+ import { EventCallback, StreamWrapper } from "./chooseStreamWrapper";
3
+ export declare class NodePre18StreamWrapper implements StreamWrapper<Writable, Buffer> {
4
+ private readableStream;
5
+ private encoding;
6
+ constructor(readableStream: Readable);
7
+ on(event: string, callback: EventCallback): void;
8
+ off(event: string, callback: EventCallback): void;
9
+ pipe(dest: Writable): Writable;
10
+ pipeTo(dest: Writable): Writable;
11
+ unpipe(dest?: Writable): void;
12
+ destroy(error?: Error): void;
13
+ pause(): void;
14
+ resume(): void;
15
+ get isPaused(): boolean;
16
+ read(): Promise<Buffer | undefined>;
17
+ setEncoding(encoding?: string): void;
18
+ text(): Promise<string>;
19
+ json<T>(): Promise<T>;
20
+ [Symbol.asyncIterator](): AsyncIterableIterator<Buffer>;
21
+ }
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
12
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
13
+ var m = o[Symbol.asyncIterator], i;
14
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
15
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
16
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
17
+ };
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.NodePre18StreamWrapper = void 0;
20
+ class NodePre18StreamWrapper {
21
+ constructor(readableStream) {
22
+ this.readableStream = readableStream;
23
+ }
24
+ on(event, callback) {
25
+ this.readableStream.on(event, callback);
26
+ }
27
+ off(event, callback) {
28
+ this.readableStream.off(event, callback);
29
+ }
30
+ pipe(dest) {
31
+ this.readableStream.pipe(dest);
32
+ return dest;
33
+ }
34
+ pipeTo(dest) {
35
+ return this.pipe(dest);
36
+ }
37
+ unpipe(dest) {
38
+ if (dest) {
39
+ this.readableStream.unpipe(dest);
40
+ }
41
+ else {
42
+ this.readableStream.unpipe();
43
+ }
44
+ }
45
+ destroy(error) {
46
+ this.readableStream.destroy(error);
47
+ }
48
+ pause() {
49
+ this.readableStream.pause();
50
+ }
51
+ resume() {
52
+ this.readableStream.resume();
53
+ }
54
+ get isPaused() {
55
+ return this.readableStream.isPaused();
56
+ }
57
+ read() {
58
+ return __awaiter(this, void 0, void 0, function* () {
59
+ return new Promise((resolve, reject) => {
60
+ const chunk = this.readableStream.read();
61
+ if (chunk) {
62
+ resolve(chunk);
63
+ }
64
+ else {
65
+ this.readableStream.once("readable", () => {
66
+ const chunk = this.readableStream.read();
67
+ resolve(chunk);
68
+ });
69
+ this.readableStream.once("error", reject);
70
+ }
71
+ });
72
+ });
73
+ }
74
+ setEncoding(encoding) {
75
+ this.readableStream.setEncoding(encoding);
76
+ this.encoding = encoding;
77
+ }
78
+ text() {
79
+ return __awaiter(this, void 0, void 0, function* () {
80
+ var _a, e_1, _b, _c;
81
+ const chunks = [];
82
+ const encoder = new TextEncoder();
83
+ this.readableStream.setEncoding((this.encoding || "utf-8"));
84
+ try {
85
+ for (var _d = true, _e = __asyncValues(this.readableStream), _f; _f = yield _e.next(), _a = _f.done, !_a; _d = true) {
86
+ _c = _f.value;
87
+ _d = false;
88
+ const chunk = _c;
89
+ chunks.push(encoder.encode(chunk));
90
+ }
91
+ }
92
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
93
+ finally {
94
+ try {
95
+ if (!_d && !_a && (_b = _e.return)) yield _b.call(_e);
96
+ }
97
+ finally { if (e_1) throw e_1.error; }
98
+ }
99
+ const decoder = new TextDecoder(this.encoding || "utf-8");
100
+ return decoder.decode(Buffer.concat(chunks));
101
+ });
102
+ }
103
+ json() {
104
+ return __awaiter(this, void 0, void 0, function* () {
105
+ const text = yield this.text();
106
+ return JSON.parse(text);
107
+ });
108
+ }
109
+ [Symbol.asyncIterator]() {
110
+ const readableStream = this.readableStream;
111
+ const iterator = readableStream[Symbol.asyncIterator]();
112
+ // Create and return an async iterator that yields buffers
113
+ return {
114
+ next() {
115
+ return __awaiter(this, void 0, void 0, function* () {
116
+ const { value, done } = yield iterator.next();
117
+ return { value: value, done };
118
+ });
119
+ },
120
+ [Symbol.asyncIterator]() {
121
+ return this;
122
+ },
123
+ };
124
+ }
125
+ }
126
+ exports.NodePre18StreamWrapper = NodePre18StreamWrapper;
@@ -0,0 +1,31 @@
1
+ import { StreamWrapper } from "./chooseStreamWrapper";
2
+ type EventCallback = (data?: any) => void;
3
+ export declare class UndiciStreamWrapper<ReadFormat extends Uint8Array | Uint16Array | Uint32Array> implements StreamWrapper<UndiciStreamWrapper<ReadFormat> | WritableStream<ReadFormat>, ReadFormat> {
4
+ private readableStream;
5
+ private reader;
6
+ private events;
7
+ private paused;
8
+ private resumeCallback;
9
+ private encoding;
10
+ constructor(readableStream: ReadableStream<ReadFormat>);
11
+ on(event: string, callback: EventCallback): void;
12
+ off(event: string, callback: EventCallback): void;
13
+ pipe(dest: UndiciStreamWrapper<ReadFormat> | WritableStream<ReadFormat>): UndiciStreamWrapper<ReadFormat> | WritableStream<ReadFormat>;
14
+ pipeTo(dest: UndiciStreamWrapper<ReadFormat> | WritableStream<ReadFormat>): UndiciStreamWrapper<ReadFormat> | WritableStream<ReadFormat>;
15
+ unpipe(dest: UndiciStreamWrapper<ReadFormat> | WritableStream): void;
16
+ destroy(error?: Error): void;
17
+ pause(): void;
18
+ resume(): void;
19
+ get isPaused(): boolean;
20
+ read(): Promise<ReadFormat | undefined>;
21
+ setEncoding(encoding: string): void;
22
+ text(): Promise<string>;
23
+ json<T>(): Promise<T>;
24
+ private _write;
25
+ private _end;
26
+ private _error;
27
+ private _emit;
28
+ private _startReading;
29
+ [Symbol.asyncIterator](): AsyncIterableIterator<ReadFormat>;
30
+ }
31
+ export {};