@kard-financial/sdk 12.2.1 → 12.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (251) hide show
  1. package/README.md +106 -15
  2. package/dist/cjs/BaseClient.d.ts +7 -8
  3. package/dist/cjs/BaseClient.js +3 -3
  4. package/dist/cjs/Client.d.ts +13 -2
  5. package/dist/cjs/Client.js +67 -0
  6. package/dist/cjs/api/resources/auth/client/Client.d.ts +1 -2
  7. package/dist/cjs/api/resources/auth/client/Client.js +3 -23
  8. package/dist/cjs/api/resources/auth/exports.d.ts +2 -0
  9. package/dist/cjs/api/resources/auth/exports.js +21 -0
  10. package/dist/cjs/api/resources/commons/errors/ConflictError.js +5 -1
  11. package/dist/cjs/api/resources/commons/errors/DoesNotExistError.js +5 -1
  12. package/dist/cjs/api/resources/commons/errors/ForbiddenError.js +5 -1
  13. package/dist/cjs/api/resources/commons/errors/InternalServerError.js +5 -1
  14. package/dist/cjs/api/resources/commons/errors/InvalidRequest.js +5 -1
  15. package/dist/cjs/api/resources/commons/errors/UnauthorizedError.js +5 -1
  16. package/dist/cjs/api/resources/commons/exports.d.ts +1 -0
  17. package/dist/cjs/api/resources/commons/exports.js +18 -0
  18. package/dist/cjs/api/resources/commons/types/ErrorObject.d.ts +2 -2
  19. package/dist/cjs/api/resources/commons/types/ErrorSource.d.ts +3 -3
  20. package/dist/cjs/api/resources/commons/types/Links.d.ts +2 -2
  21. package/dist/cjs/api/resources/files/client/Client.d.ts +1 -2
  22. package/dist/cjs/api/resources/files/client/Client.js +11 -47
  23. package/dist/cjs/api/resources/files/exports.d.ts +2 -0
  24. package/dist/cjs/api/resources/files/exports.js +21 -0
  25. package/dist/cjs/api/resources/notifications/client/Client.d.ts +1 -2
  26. package/dist/cjs/api/resources/notifications/exports.d.ts +3 -0
  27. package/dist/cjs/api/resources/notifications/exports.js +22 -0
  28. package/dist/cjs/api/resources/notifications/resources/subscriptions/client/Client.d.ts +1 -2
  29. package/dist/cjs/api/resources/notifications/resources/subscriptions/client/Client.js +7 -64
  30. package/dist/cjs/api/resources/notifications/resources/subscriptions/exports.d.ts +2 -0
  31. package/dist/cjs/api/resources/notifications/resources/subscriptions/exports.js +21 -0
  32. package/dist/cjs/api/resources/notifications/resources/subscriptions/types/UpdateSubscriptionRequestAttributes.d.ts +3 -3
  33. package/dist/cjs/api/resources/notifications/types/AuditUpdateAttributes.d.ts +3 -3
  34. package/dist/cjs/api/resources/notifications/types/FailedTransactionAttributes.d.ts +1 -1
  35. package/dist/cjs/api/resources/notifications/types/NotificationPayload.d.ts +2 -2
  36. package/dist/cjs/api/resources/notifications/types/RewardNotificationAttributes.d.ts +2 -2
  37. package/dist/cjs/api/resources/ping/client/Client.d.ts +1 -2
  38. package/dist/cjs/api/resources/ping/client/Client.js +2 -20
  39. package/dist/cjs/api/resources/ping/errors/NetworkBlockedError.js +5 -1
  40. package/dist/cjs/api/resources/ping/exports.d.ts +2 -0
  41. package/dist/cjs/api/resources/ping/exports.js +21 -0
  42. package/dist/cjs/api/resources/transactions/client/Client.d.ts +3 -3
  43. package/dist/cjs/api/resources/transactions/client/Client.js +15 -112
  44. package/dist/cjs/api/resources/transactions/client/requests/GetEarnedRewardsRequest.d.ts +4 -1
  45. package/dist/cjs/api/resources/transactions/errors/CreateAuditMultiStatus.js +5 -1
  46. package/dist/cjs/api/resources/transactions/errors/CreateIncomingTransactionsMultiStatus.js +5 -1
  47. package/dist/cjs/api/resources/transactions/errors/FraudMultiStatus.js +5 -1
  48. package/dist/cjs/api/resources/transactions/exports.d.ts +2 -0
  49. package/dist/cjs/api/resources/transactions/exports.js +21 -0
  50. package/dist/cjs/api/resources/transactions/types/CoreTransactionAttributes.d.ts +3 -3
  51. package/dist/cjs/api/resources/transactions/types/CreateAuditMultiStatusResponse.d.ts +1 -1
  52. package/dist/cjs/api/resources/transactions/types/GetEarnedRewardsResponse.d.ts +1 -1
  53. package/dist/cjs/api/resources/transactions/types/MatchedTransactionsAttributes.d.ts +14 -14
  54. package/dist/cjs/api/resources/transactions/types/Merchant.d.ts +9 -9
  55. package/dist/cjs/api/resources/transactions/types/RewardedTransactionAttributes.d.ts +3 -3
  56. package/dist/cjs/api/resources/transactions/types/TransactionsAttributes.d.ts +18 -18
  57. package/dist/cjs/api/resources/users/client/Client.d.ts +1 -2
  58. package/dist/cjs/api/resources/users/client/Client.js +5 -80
  59. package/dist/cjs/api/resources/users/errors/MultiStatus.js +5 -1
  60. package/dist/cjs/api/resources/users/exports.d.ts +3 -0
  61. package/dist/cjs/api/resources/users/exports.js +22 -0
  62. package/dist/cjs/api/resources/users/resources/attributions/client/Client.d.ts +1 -2
  63. package/dist/cjs/api/resources/users/resources/attributions/client/Client.js +20 -94
  64. package/dist/cjs/api/resources/users/resources/attributions/exports.d.ts +2 -0
  65. package/dist/cjs/api/resources/users/resources/attributions/exports.js +21 -0
  66. package/dist/cjs/api/resources/users/resources/attributions/types/ActivateOfferResponse.d.ts +1 -1
  67. package/dist/cjs/api/resources/users/resources/attributions/types/AttributionState.d.ts +2 -2
  68. package/dist/cjs/api/resources/users/resources/attributions/types/BoostOfferResponse.d.ts +1 -1
  69. package/dist/cjs/api/resources/users/resources/attributions/types/NotificationAttributionAttributes.d.ts +1 -1
  70. package/dist/cjs/api/resources/users/resources/attributions/types/OfferAttributionAttributes.d.ts +1 -1
  71. package/dist/cjs/api/resources/users/resources/auth/client/Client.d.ts +1 -2
  72. package/dist/cjs/api/resources/users/resources/auth/client/Client.js +2 -20
  73. package/dist/cjs/api/resources/users/resources/auth/exports.d.ts +2 -0
  74. package/dist/cjs/api/resources/users/resources/auth/exports.js +21 -0
  75. package/dist/cjs/api/resources/users/resources/rewards/client/Client.d.ts +1 -2
  76. package/dist/cjs/api/resources/users/resources/rewards/client/Client.js +39 -144
  77. package/dist/cjs/api/resources/users/resources/rewards/exports.d.ts +2 -0
  78. package/dist/cjs/api/resources/users/resources/rewards/exports.js +21 -0
  79. package/dist/cjs/api/resources/users/resources/rewards/types/CtaComponent.d.ts +2 -2
  80. package/dist/cjs/api/resources/users/resources/rewards/types/LocationData.d.ts +1 -1
  81. package/dist/cjs/api/resources/users/resources/rewards/types/LocationsResponseObject.d.ts +1 -1
  82. package/dist/cjs/api/resources/users/resources/rewards/types/LogoFlare.d.ts +1 -1
  83. package/dist/cjs/api/resources/users/resources/rewards/types/OfferCommonFields.d.ts +8 -8
  84. package/dist/cjs/api/resources/users/resources/rewards/types/OfferComponents.d.ts +9 -9
  85. package/dist/cjs/api/resources/users/resources/rewards/types/OffersMeta.d.ts +1 -1
  86. package/dist/cjs/api/resources/users/resources/rewards/types/OffersResponseObject.d.ts +2 -2
  87. package/dist/cjs/api/resources/users/resources/rewards/types/ProgressBar.d.ts +1 -1
  88. package/dist/cjs/api/resources/users/resources/rewards/types/ProgressBarLabelPair.d.ts +2 -2
  89. package/dist/cjs/api/resources/users/resources/rewards/types/ProgressBarLabels.d.ts +1 -1
  90. package/dist/cjs/api/resources/users/resources/rewards/types/ProgressBarSegment.d.ts +1 -1
  91. package/dist/cjs/api/resources/users/resources/rewards/types/ProgressBarSegments.d.ts +1 -1
  92. package/dist/cjs/api/resources/users/resources/rewards/types/StandardOffer.d.ts +1 -1
  93. package/dist/cjs/api/resources/users/resources/uploads/client/Client.d.ts +1 -2
  94. package/dist/cjs/api/resources/users/resources/uploads/client/Client.js +4 -60
  95. package/dist/cjs/api/resources/users/resources/uploads/errors/UploadPartMultiStatus.js +5 -1
  96. package/dist/cjs/api/resources/users/resources/uploads/exports.d.ts +2 -0
  97. package/dist/cjs/api/resources/users/resources/uploads/exports.js +21 -0
  98. package/dist/cjs/api/resources/users/resources/uploads/types/CreateUploadPartMultiStatusResponse.d.ts +1 -1
  99. package/dist/cjs/api/resources/users/types/CreateUsersMultiStatusResponse.d.ts +1 -1
  100. package/dist/cjs/api/resources/users/types/UpdateUserRequestAttributes.d.ts +5 -5
  101. package/dist/cjs/api/resources/users/types/UserRequestAttributes.d.ts +6 -6
  102. package/dist/cjs/auth/OAuthAuthProvider.d.ts +36 -14
  103. package/dist/cjs/auth/OAuthAuthProvider.js +108 -40
  104. package/dist/cjs/core/auth/BasicAuth.d.ts +2 -2
  105. package/dist/cjs/core/auth/BasicAuth.js +7 -1
  106. package/dist/cjs/core/fetcher/BinaryResponse.d.ts +1 -1
  107. package/dist/cjs/core/fetcher/EndpointSupplier.d.ts +2 -2
  108. package/dist/cjs/core/fetcher/Fetcher.d.ts +3 -2
  109. package/dist/cjs/core/fetcher/Fetcher.js +12 -2
  110. package/dist/cjs/core/fetcher/index.d.ts +2 -0
  111. package/dist/cjs/core/fetcher/index.js +3 -1
  112. package/dist/cjs/core/fetcher/makePassthroughRequest.d.ts +49 -0
  113. package/dist/cjs/core/fetcher/makePassthroughRequest.js +135 -0
  114. package/dist/cjs/core/fetcher/makeRequest.d.ts +6 -1
  115. package/dist/cjs/core/fetcher/makeRequest.js +30 -9
  116. package/dist/cjs/core/headers.d.ts +2 -2
  117. package/dist/cjs/core/runtime/runtime.js +8 -7
  118. package/dist/cjs/errors/KardApiError.d.ts +3 -1
  119. package/dist/cjs/errors/KardApiError.js +9 -2
  120. package/dist/cjs/errors/KardApiTimeoutError.d.ts +4 -1
  121. package/dist/cjs/errors/KardApiTimeoutError.js +9 -2
  122. package/dist/cjs/errors/handleNonStatusCodeError.d.ts +2 -0
  123. package/dist/cjs/errors/handleNonStatusCodeError.js +68 -0
  124. package/dist/cjs/version.d.ts +1 -1
  125. package/dist/cjs/version.js +1 -1
  126. package/dist/esm/BaseClient.d.mts +7 -8
  127. package/dist/esm/BaseClient.mjs +3 -3
  128. package/dist/esm/Client.d.mts +13 -2
  129. package/dist/esm/Client.mjs +34 -0
  130. package/dist/esm/api/resources/auth/client/Client.d.mts +1 -2
  131. package/dist/esm/api/resources/auth/client/Client.mjs +3 -23
  132. package/dist/esm/api/resources/auth/exports.d.mts +2 -0
  133. package/dist/esm/api/resources/auth/exports.mjs +3 -0
  134. package/dist/esm/api/resources/commons/errors/ConflictError.mjs +5 -1
  135. package/dist/esm/api/resources/commons/errors/DoesNotExistError.mjs +5 -1
  136. package/dist/esm/api/resources/commons/errors/ForbiddenError.mjs +5 -1
  137. package/dist/esm/api/resources/commons/errors/InternalServerError.mjs +5 -1
  138. package/dist/esm/api/resources/commons/errors/InvalidRequest.mjs +5 -1
  139. package/dist/esm/api/resources/commons/errors/UnauthorizedError.mjs +5 -1
  140. package/dist/esm/api/resources/commons/exports.d.mts +1 -0
  141. package/dist/esm/api/resources/commons/exports.mjs +2 -0
  142. package/dist/esm/api/resources/commons/types/ErrorObject.d.mts +2 -2
  143. package/dist/esm/api/resources/commons/types/ErrorSource.d.mts +3 -3
  144. package/dist/esm/api/resources/commons/types/Links.d.mts +2 -2
  145. package/dist/esm/api/resources/files/client/Client.d.mts +1 -2
  146. package/dist/esm/api/resources/files/client/Client.mjs +11 -47
  147. package/dist/esm/api/resources/files/exports.d.mts +2 -0
  148. package/dist/esm/api/resources/files/exports.mjs +3 -0
  149. package/dist/esm/api/resources/notifications/client/Client.d.mts +1 -2
  150. package/dist/esm/api/resources/notifications/exports.d.mts +3 -0
  151. package/dist/esm/api/resources/notifications/exports.mjs +4 -0
  152. package/dist/esm/api/resources/notifications/resources/subscriptions/client/Client.d.mts +1 -2
  153. package/dist/esm/api/resources/notifications/resources/subscriptions/client/Client.mjs +7 -64
  154. package/dist/esm/api/resources/notifications/resources/subscriptions/exports.d.mts +2 -0
  155. package/dist/esm/api/resources/notifications/resources/subscriptions/exports.mjs +3 -0
  156. package/dist/esm/api/resources/notifications/resources/subscriptions/types/UpdateSubscriptionRequestAttributes.d.mts +3 -3
  157. package/dist/esm/api/resources/notifications/types/AuditUpdateAttributes.d.mts +3 -3
  158. package/dist/esm/api/resources/notifications/types/FailedTransactionAttributes.d.mts +1 -1
  159. package/dist/esm/api/resources/notifications/types/NotificationPayload.d.mts +2 -2
  160. package/dist/esm/api/resources/notifications/types/RewardNotificationAttributes.d.mts +2 -2
  161. package/dist/esm/api/resources/ping/client/Client.d.mts +1 -2
  162. package/dist/esm/api/resources/ping/client/Client.mjs +2 -20
  163. package/dist/esm/api/resources/ping/errors/NetworkBlockedError.mjs +5 -1
  164. package/dist/esm/api/resources/ping/exports.d.mts +2 -0
  165. package/dist/esm/api/resources/ping/exports.mjs +3 -0
  166. package/dist/esm/api/resources/transactions/client/Client.d.mts +3 -3
  167. package/dist/esm/api/resources/transactions/client/Client.mjs +15 -112
  168. package/dist/esm/api/resources/transactions/client/requests/GetEarnedRewardsRequest.d.mts +4 -1
  169. package/dist/esm/api/resources/transactions/errors/CreateAuditMultiStatus.mjs +5 -1
  170. package/dist/esm/api/resources/transactions/errors/CreateIncomingTransactionsMultiStatus.mjs +5 -1
  171. package/dist/esm/api/resources/transactions/errors/FraudMultiStatus.mjs +5 -1
  172. package/dist/esm/api/resources/transactions/exports.d.mts +2 -0
  173. package/dist/esm/api/resources/transactions/exports.mjs +3 -0
  174. package/dist/esm/api/resources/transactions/types/CoreTransactionAttributes.d.mts +3 -3
  175. package/dist/esm/api/resources/transactions/types/CreateAuditMultiStatusResponse.d.mts +1 -1
  176. package/dist/esm/api/resources/transactions/types/GetEarnedRewardsResponse.d.mts +1 -1
  177. package/dist/esm/api/resources/transactions/types/MatchedTransactionsAttributes.d.mts +14 -14
  178. package/dist/esm/api/resources/transactions/types/Merchant.d.mts +9 -9
  179. package/dist/esm/api/resources/transactions/types/RewardedTransactionAttributes.d.mts +3 -3
  180. package/dist/esm/api/resources/transactions/types/TransactionsAttributes.d.mts +18 -18
  181. package/dist/esm/api/resources/users/client/Client.d.mts +1 -2
  182. package/dist/esm/api/resources/users/client/Client.mjs +5 -80
  183. package/dist/esm/api/resources/users/errors/MultiStatus.mjs +5 -1
  184. package/dist/esm/api/resources/users/exports.d.mts +3 -0
  185. package/dist/esm/api/resources/users/exports.mjs +4 -0
  186. package/dist/esm/api/resources/users/resources/attributions/client/Client.d.mts +1 -2
  187. package/dist/esm/api/resources/users/resources/attributions/client/Client.mjs +20 -94
  188. package/dist/esm/api/resources/users/resources/attributions/exports.d.mts +2 -0
  189. package/dist/esm/api/resources/users/resources/attributions/exports.mjs +3 -0
  190. package/dist/esm/api/resources/users/resources/attributions/types/ActivateOfferResponse.d.mts +1 -1
  191. package/dist/esm/api/resources/users/resources/attributions/types/AttributionState.d.mts +2 -2
  192. package/dist/esm/api/resources/users/resources/attributions/types/BoostOfferResponse.d.mts +1 -1
  193. package/dist/esm/api/resources/users/resources/attributions/types/NotificationAttributionAttributes.d.mts +1 -1
  194. package/dist/esm/api/resources/users/resources/attributions/types/OfferAttributionAttributes.d.mts +1 -1
  195. package/dist/esm/api/resources/users/resources/auth/client/Client.d.mts +1 -2
  196. package/dist/esm/api/resources/users/resources/auth/client/Client.mjs +2 -20
  197. package/dist/esm/api/resources/users/resources/auth/exports.d.mts +2 -0
  198. package/dist/esm/api/resources/users/resources/auth/exports.mjs +3 -0
  199. package/dist/esm/api/resources/users/resources/rewards/client/Client.d.mts +1 -2
  200. package/dist/esm/api/resources/users/resources/rewards/client/Client.mjs +39 -144
  201. package/dist/esm/api/resources/users/resources/rewards/exports.d.mts +2 -0
  202. package/dist/esm/api/resources/users/resources/rewards/exports.mjs +3 -0
  203. package/dist/esm/api/resources/users/resources/rewards/types/CtaComponent.d.mts +2 -2
  204. package/dist/esm/api/resources/users/resources/rewards/types/LocationData.d.mts +1 -1
  205. package/dist/esm/api/resources/users/resources/rewards/types/LocationsResponseObject.d.mts +1 -1
  206. package/dist/esm/api/resources/users/resources/rewards/types/LogoFlare.d.mts +1 -1
  207. package/dist/esm/api/resources/users/resources/rewards/types/OfferCommonFields.d.mts +8 -8
  208. package/dist/esm/api/resources/users/resources/rewards/types/OfferComponents.d.mts +9 -9
  209. package/dist/esm/api/resources/users/resources/rewards/types/OffersMeta.d.mts +1 -1
  210. package/dist/esm/api/resources/users/resources/rewards/types/OffersResponseObject.d.mts +2 -2
  211. package/dist/esm/api/resources/users/resources/rewards/types/ProgressBar.d.mts +1 -1
  212. package/dist/esm/api/resources/users/resources/rewards/types/ProgressBarLabelPair.d.mts +2 -2
  213. package/dist/esm/api/resources/users/resources/rewards/types/ProgressBarLabels.d.mts +1 -1
  214. package/dist/esm/api/resources/users/resources/rewards/types/ProgressBarSegment.d.mts +1 -1
  215. package/dist/esm/api/resources/users/resources/rewards/types/ProgressBarSegments.d.mts +1 -1
  216. package/dist/esm/api/resources/users/resources/rewards/types/StandardOffer.d.mts +1 -1
  217. package/dist/esm/api/resources/users/resources/uploads/client/Client.d.mts +1 -2
  218. package/dist/esm/api/resources/users/resources/uploads/client/Client.mjs +4 -60
  219. package/dist/esm/api/resources/users/resources/uploads/errors/UploadPartMultiStatus.mjs +5 -1
  220. package/dist/esm/api/resources/users/resources/uploads/exports.d.mts +2 -0
  221. package/dist/esm/api/resources/users/resources/uploads/exports.mjs +3 -0
  222. package/dist/esm/api/resources/users/resources/uploads/types/CreateUploadPartMultiStatusResponse.d.mts +1 -1
  223. package/dist/esm/api/resources/users/types/CreateUsersMultiStatusResponse.d.mts +1 -1
  224. package/dist/esm/api/resources/users/types/UpdateUserRequestAttributes.d.mts +5 -5
  225. package/dist/esm/api/resources/users/types/UserRequestAttributes.d.mts +6 -6
  226. package/dist/esm/auth/OAuthAuthProvider.d.mts +36 -14
  227. package/dist/esm/auth/OAuthAuthProvider.mjs +106 -39
  228. package/dist/esm/core/auth/BasicAuth.d.mts +2 -2
  229. package/dist/esm/core/auth/BasicAuth.mjs +7 -1
  230. package/dist/esm/core/fetcher/BinaryResponse.d.mts +1 -1
  231. package/dist/esm/core/fetcher/EndpointSupplier.d.mts +2 -2
  232. package/dist/esm/core/fetcher/Fetcher.d.mts +3 -2
  233. package/dist/esm/core/fetcher/Fetcher.mjs +12 -2
  234. package/dist/esm/core/fetcher/index.d.mts +2 -0
  235. package/dist/esm/core/fetcher/index.mjs +1 -0
  236. package/dist/esm/core/fetcher/makePassthroughRequest.d.mts +49 -0
  237. package/dist/esm/core/fetcher/makePassthroughRequest.mjs +132 -0
  238. package/dist/esm/core/fetcher/makeRequest.d.mts +6 -1
  239. package/dist/esm/core/fetcher/makeRequest.mjs +28 -9
  240. package/dist/esm/core/headers.d.mts +2 -2
  241. package/dist/esm/core/runtime/runtime.mjs +8 -7
  242. package/dist/esm/errors/KardApiError.d.mts +3 -1
  243. package/dist/esm/errors/KardApiError.mjs +9 -2
  244. package/dist/esm/errors/KardApiTimeoutError.d.mts +4 -1
  245. package/dist/esm/errors/KardApiTimeoutError.mjs +9 -2
  246. package/dist/esm/errors/handleNonStatusCodeError.d.mts +2 -0
  247. package/dist/esm/errors/handleNonStatusCodeError.mjs +32 -0
  248. package/dist/esm/version.d.mts +1 -1
  249. package/dist/esm/version.mjs +1 -1
  250. package/package.json +134 -10
  251. package/reference.md +3 -1
@@ -0,0 +1,135 @@
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.makePassthroughRequest = makePassthroughRequest;
13
+ const logger_js_1 = require("../logging/logger.js");
14
+ const join_js_1 = require("../url/join.js");
15
+ const EndpointSupplier_js_1 = require("./EndpointSupplier.js");
16
+ const getFetchFn_js_1 = require("./getFetchFn.js");
17
+ const makeRequest_js_1 = require("./makeRequest.js");
18
+ const requestWithRetries_js_1 = require("./requestWithRetries.js");
19
+ const Supplier_js_1 = require("./Supplier.js");
20
+ /**
21
+ * Makes a passthrough HTTP request using the SDK's configuration (auth, retry, logging, etc.)
22
+ * while mimicking the standard `fetch` API.
23
+ *
24
+ * @param input - The URL, path, or Request object. If a relative path, it will be resolved against the configured base URL.
25
+ * @param init - Standard RequestInit options (method, headers, body, signal, etc.)
26
+ * @param clientOptions - SDK client options (auth, default headers, logging, etc.)
27
+ * @param requestOptions - Per-request overrides (timeout, retries, extra headers, abort signal).
28
+ * @returns A standard Response object.
29
+ */
30
+ function makePassthroughRequest(input, init, clientOptions, requestOptions) {
31
+ return __awaiter(this, void 0, void 0, function* () {
32
+ var _a, _b, _c, _d, _e, _f, _g;
33
+ const logger = (0, logger_js_1.createLogger)(clientOptions.logging);
34
+ // Extract URL and default init properties from Request object if provided
35
+ let url;
36
+ let effectiveInit = init;
37
+ if (input instanceof Request) {
38
+ url = input.url;
39
+ // If no explicit init provided, extract properties from the Request object
40
+ if (init == null) {
41
+ effectiveInit = {
42
+ method: input.method,
43
+ headers: Object.fromEntries(input.headers.entries()),
44
+ body: input.body,
45
+ signal: input.signal,
46
+ credentials: input.credentials,
47
+ cache: input.cache,
48
+ redirect: input.redirect,
49
+ referrer: input.referrer,
50
+ integrity: input.integrity,
51
+ mode: input.mode,
52
+ };
53
+ }
54
+ }
55
+ else {
56
+ url = input instanceof URL ? input.toString() : input;
57
+ }
58
+ // Resolve the base URL
59
+ const baseUrl = (_a = (clientOptions.baseUrl != null ? yield Supplier_js_1.Supplier.get(clientOptions.baseUrl) : undefined)) !== null && _a !== void 0 ? _a : (clientOptions.environment != null ? yield Supplier_js_1.Supplier.get(clientOptions.environment) : undefined);
60
+ // Determine the full URL
61
+ let fullUrl;
62
+ if (url.startsWith("http://") || url.startsWith("https://")) {
63
+ fullUrl = url;
64
+ }
65
+ else if (baseUrl != null) {
66
+ fullUrl = (0, join_js_1.join)(baseUrl, url);
67
+ }
68
+ else {
69
+ fullUrl = url;
70
+ }
71
+ // Merge headers: SDK default headers -> auth headers -> user-provided headers
72
+ const mergedHeaders = {};
73
+ // Apply SDK default headers (resolve suppliers)
74
+ if (clientOptions.headers != null) {
75
+ for (const [key, value] of Object.entries(clientOptions.headers)) {
76
+ const resolved = yield EndpointSupplier_js_1.EndpointSupplier.get(value, { endpointMetadata: {} });
77
+ if (resolved != null) {
78
+ mergedHeaders[key.toLowerCase()] = `${resolved}`;
79
+ }
80
+ }
81
+ }
82
+ // Apply auth headers
83
+ if (clientOptions.getAuthHeaders != null) {
84
+ const authHeaders = yield clientOptions.getAuthHeaders();
85
+ for (const [key, value] of Object.entries(authHeaders)) {
86
+ mergedHeaders[key.toLowerCase()] = value;
87
+ }
88
+ }
89
+ // Apply user-provided headers from init
90
+ if ((effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.headers) != null) {
91
+ const initHeaders = effectiveInit.headers instanceof Headers
92
+ ? Object.fromEntries(effectiveInit.headers.entries())
93
+ : Array.isArray(effectiveInit.headers)
94
+ ? Object.fromEntries(effectiveInit.headers)
95
+ : effectiveInit.headers;
96
+ for (const [key, value] of Object.entries(initHeaders)) {
97
+ if (value != null) {
98
+ mergedHeaders[key.toLowerCase()] = value;
99
+ }
100
+ }
101
+ }
102
+ // Apply per-request option headers (highest priority)
103
+ if ((requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers) != null) {
104
+ for (const [key, value] of Object.entries(requestOptions.headers)) {
105
+ mergedHeaders[key.toLowerCase()] = value;
106
+ }
107
+ }
108
+ const method = (_b = effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.method) !== null && _b !== void 0 ? _b : "GET";
109
+ const body = effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.body;
110
+ const timeoutInSeconds = (_c = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _c !== void 0 ? _c : clientOptions.timeoutInSeconds;
111
+ const timeoutMs = timeoutInSeconds != null ? timeoutInSeconds * 1000 : undefined;
112
+ const maxRetries = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _d !== void 0 ? _d : clientOptions.maxRetries;
113
+ const abortSignal = (_f = (_e = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal) !== null && _e !== void 0 ? _e : effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.signal) !== null && _f !== void 0 ? _f : undefined;
114
+ const fetchFn = (_g = clientOptions.fetch) !== null && _g !== void 0 ? _g : (yield (0, getFetchFn_js_1.getFetchFn)());
115
+ if (logger.isDebug()) {
116
+ logger.debug("Making passthrough HTTP request", {
117
+ method,
118
+ url: fullUrl,
119
+ hasBody: body != null,
120
+ });
121
+ }
122
+ const response = yield (0, requestWithRetries_js_1.requestWithRetries)(() => __awaiter(this, void 0, void 0, function* () {
123
+ return (0, makeRequest_js_1.makeRequest)(fetchFn, fullUrl, method, mergedHeaders, body !== null && body !== void 0 ? body : undefined, timeoutMs, abortSignal, (effectiveInit === null || effectiveInit === void 0 ? void 0 : effectiveInit.credentials) === "include", undefined, // duplex
124
+ false);
125
+ }), maxRetries);
126
+ if (logger.isDebug()) {
127
+ logger.debug("Passthrough HTTP request completed", {
128
+ method,
129
+ url: fullUrl,
130
+ statusCode: response.status,
131
+ });
132
+ }
133
+ return response;
134
+ });
135
+ }
@@ -1 +1,6 @@
1
- export declare const makeRequest: (fetchFn: (url: string, init: RequestInit) => Promise<Response>, url: string, method: string, headers: Headers | Record<string, string>, requestBody: BodyInit | undefined, timeoutMs?: number, abortSignal?: AbortSignal, withCredentials?: boolean, duplex?: "half") => Promise<Response>;
1
+ export declare function isCacheNoStoreSupported(): boolean;
2
+ /**
3
+ * Reset the cached result of `isCacheNoStoreSupported`. Exposed for testing only.
4
+ */
5
+ export declare function resetCacheNoStoreSupported(): void;
6
+ export declare const makeRequest: (fetchFn: (url: string, init: RequestInit) => Promise<Response>, url: string, method: string, headers: Headers | Record<string, string>, requestBody: BodyInit | undefined, timeoutMs?: number, abortSignal?: AbortSignal, withCredentials?: boolean, duplex?: "half", disableCache?: boolean) => Promise<Response>;
@@ -10,8 +10,35 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.makeRequest = void 0;
13
+ exports.isCacheNoStoreSupported = isCacheNoStoreSupported;
14
+ exports.resetCacheNoStoreSupported = resetCacheNoStoreSupported;
13
15
  const signals_js_1 = require("./signals.js");
14
- const makeRequest = (fetchFn, url, method, headers, requestBody, timeoutMs, abortSignal, withCredentials, duplex) => __awaiter(void 0, void 0, void 0, function* () {
16
+ /**
17
+ * Cached result of checking whether the current runtime supports
18
+ * the `cache` option in `Request`. Some runtimes (e.g. Cloudflare Workers)
19
+ * throw a TypeError when this option is used.
20
+ */
21
+ let _cacheNoStoreSupported;
22
+ function isCacheNoStoreSupported() {
23
+ if (_cacheNoStoreSupported != null) {
24
+ return _cacheNoStoreSupported;
25
+ }
26
+ try {
27
+ new Request("http://localhost", { cache: "no-store" });
28
+ _cacheNoStoreSupported = true;
29
+ }
30
+ catch (_a) {
31
+ _cacheNoStoreSupported = false;
32
+ }
33
+ return _cacheNoStoreSupported;
34
+ }
35
+ /**
36
+ * Reset the cached result of `isCacheNoStoreSupported`. Exposed for testing only.
37
+ */
38
+ function resetCacheNoStoreSupported() {
39
+ _cacheNoStoreSupported = undefined;
40
+ }
41
+ const makeRequest = (fetchFn, url, method, headers, requestBody, timeoutMs, abortSignal, withCredentials, duplex, disableCache) => __awaiter(void 0, void 0, void 0, function* () {
15
42
  const signals = [];
16
43
  let timeoutAbortId;
17
44
  if (timeoutMs != null) {
@@ -23,15 +50,9 @@ const makeRequest = (fetchFn, url, method, headers, requestBody, timeoutMs, abor
23
50
  signals.push(abortSignal);
24
51
  }
25
52
  const newSignals = (0, signals_js_1.anySignal)(signals);
26
- const response = yield fetchFn(url, {
27
- method: method,
28
- headers,
29
- body: requestBody,
30
- signal: newSignals,
31
- credentials: withCredentials ? "include" : undefined,
53
+ const response = yield fetchFn(url, Object.assign({ method: method, headers, body: requestBody, signal: newSignals, credentials: withCredentials ? "include" : undefined,
32
54
  // @ts-ignore
33
- duplex,
34
- });
55
+ duplex }, (disableCache && isCacheNoStoreSupported() ? { cache: "no-store" } : {})));
35
56
  if (timeoutAbortId != null) {
36
57
  clearTimeout(timeoutAbortId);
37
58
  }
@@ -1,2 +1,2 @@
1
- export declare function mergeHeaders<THeaderValue>(...headersArray: (Record<string, THeaderValue> | null | undefined)[]): Record<string, string | THeaderValue>;
2
- export declare function mergeOnlyDefinedHeaders<THeaderValue>(...headersArray: (Record<string, THeaderValue> | null | undefined)[]): Record<string, THeaderValue>;
1
+ export declare function mergeHeaders(...headersArray: (Record<string, unknown> | null | undefined)[]): Record<string, unknown>;
2
+ export declare function mergeOnlyDefinedHeaders(...headersArray: (Record<string, unknown> | null | undefined)[]): Record<string, unknown>;
@@ -84,17 +84,18 @@ function evaluateRuntime() {
84
84
  }
85
85
  /**
86
86
  * A constant that indicates whether the environment the code is running is Node.JS.
87
+ *
88
+ * We assign `process` to a local variable first to avoid being flagged by
89
+ * bundlers that perform static analysis on `process.versions` (e.g. Next.js
90
+ * Edge Runtime warns about Node.js APIs even when they are guarded).
87
91
  */
88
- const isNode = typeof process !== "undefined" &&
89
- "version" in process &&
90
- !!process.version &&
91
- "versions" in process &&
92
- !!((_e = process.versions) === null || _e === void 0 ? void 0 : _e.node);
92
+ const _process = typeof process !== "undefined" ? process : undefined;
93
+ const isNode = typeof _process !== "undefined" && typeof ((_e = _process.versions) === null || _e === void 0 ? void 0 : _e.node) === "string";
93
94
  if (isNode) {
94
95
  return {
95
96
  type: "node",
96
- version: process.versions.node,
97
- parsedVersion: Number(process.versions.node.split(".")[0]),
97
+ version: _process.versions.node,
98
+ parsedVersion: Number(_process.versions.node.split(".")[0]),
98
99
  };
99
100
  }
100
101
  return {
@@ -3,10 +3,12 @@ export declare class KardApiError extends Error {
3
3
  readonly statusCode?: number;
4
4
  readonly body?: unknown;
5
5
  readonly rawResponse?: core.RawResponse;
6
- constructor({ message, statusCode, body, rawResponse, }: {
6
+ readonly cause?: unknown;
7
+ constructor({ message, statusCode, body, rawResponse, cause, }: {
7
8
  message?: string;
8
9
  statusCode?: number;
9
10
  body?: unknown;
10
11
  rawResponse?: core.RawResponse;
12
+ cause?: unknown;
11
13
  });
12
14
  }
@@ -4,12 +4,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.KardApiError = void 0;
5
5
  const json_js_1 = require("../core/json.js");
6
6
  class KardApiError extends Error {
7
- constructor({ message, statusCode, body, rawResponse, }) {
7
+ constructor({ message, statusCode, body, rawResponse, cause, }) {
8
8
  super(buildMessage({ message, statusCode, body }));
9
- Object.setPrototypeOf(this, KardApiError.prototype);
9
+ Object.setPrototypeOf(this, new.target.prototype);
10
+ if (Error.captureStackTrace) {
11
+ Error.captureStackTrace(this, this.constructor);
12
+ }
13
+ this.name = this.constructor.name;
10
14
  this.statusCode = statusCode;
11
15
  this.body = body;
12
16
  this.rawResponse = rawResponse;
17
+ if (cause != null) {
18
+ this.cause = cause;
19
+ }
13
20
  }
14
21
  }
15
22
  exports.KardApiError = KardApiError;
@@ -1,3 +1,6 @@
1
1
  export declare class KardApiTimeoutError extends Error {
2
- constructor(message: string);
2
+ readonly cause?: unknown;
3
+ constructor(message: string, opts?: {
4
+ cause?: unknown;
5
+ });
3
6
  }
@@ -3,9 +3,16 @@
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.KardApiTimeoutError = void 0;
5
5
  class KardApiTimeoutError extends Error {
6
- constructor(message) {
6
+ constructor(message, opts) {
7
7
  super(message);
8
- Object.setPrototypeOf(this, KardApiTimeoutError.prototype);
8
+ Object.setPrototypeOf(this, new.target.prototype);
9
+ if (Error.captureStackTrace) {
10
+ Error.captureStackTrace(this, this.constructor);
11
+ }
12
+ this.name = this.constructor.name;
13
+ if ((opts === null || opts === void 0 ? void 0 : opts.cause) != null) {
14
+ this.cause = opts.cause;
15
+ }
9
16
  }
10
17
  }
11
18
  exports.KardApiTimeoutError = KardApiTimeoutError;
@@ -0,0 +1,2 @@
1
+ import type * as core from "../core/index.js";
2
+ export declare function handleNonStatusCodeError(error: core.Fetcher.Error, rawResponse: core.RawResponse, method: string, path: string): never;
@@ -0,0 +1,68 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.handleNonStatusCodeError = handleNonStatusCodeError;
38
+ const errors = __importStar(require("./index.js"));
39
+ function handleNonStatusCodeError(error, rawResponse, method, path) {
40
+ switch (error.reason) {
41
+ case "non-json":
42
+ throw new errors.KardApiError({
43
+ statusCode: error.statusCode,
44
+ body: error.rawBody,
45
+ rawResponse: rawResponse,
46
+ });
47
+ case "body-is-null":
48
+ throw new errors.KardApiError({
49
+ statusCode: error.statusCode,
50
+ rawResponse: rawResponse,
51
+ });
52
+ case "timeout":
53
+ throw new errors.KardApiTimeoutError(`Timeout exceeded when calling ${method} ${path}.`, {
54
+ cause: error.cause,
55
+ });
56
+ case "unknown":
57
+ throw new errors.KardApiError({
58
+ message: error.errorMessage,
59
+ rawResponse: rawResponse,
60
+ cause: error.cause,
61
+ });
62
+ default:
63
+ throw new errors.KardApiError({
64
+ message: "Unknown error",
65
+ rawResponse: rawResponse,
66
+ });
67
+ }
68
+ }
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "12.2.1";
1
+ export declare const SDK_VERSION = "12.4.0";
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SDK_VERSION = void 0;
4
- exports.SDK_VERSION = "12.2.1";
4
+ exports.SDK_VERSION = "12.4.0";
@@ -1,11 +1,10 @@
1
+ import { OAuthAuthProvider } from "./auth/OAuthAuthProvider.mjs";
1
2
  import * as core from "./core/index.mjs";
2
3
  import type * as environments from "./environments.mjs";
3
- export interface BaseClientOptions {
4
+ export type BaseClientOptions = {
4
5
  environment?: core.Supplier<environments.KardApiEnvironment | string>;
5
6
  /** Specify a custom URL to connect the client to. */
6
7
  baseUrl?: core.Supplier<string>;
7
- clientId?: core.Supplier<string>;
8
- clientSecret?: core.Supplier<string>;
9
8
  /** Additional headers to include in requests. */
10
9
  headers?: Record<string, string | core.Supplier<string | null | undefined> | null | undefined>;
11
10
  /** The default maximum time to wait for a response in seconds. */
@@ -16,7 +15,7 @@ export interface BaseClientOptions {
16
15
  fetch?: typeof fetch;
17
16
  /** Configure logging for the client. */
18
17
  logging?: core.logging.LogConfig | core.logging.Logger;
19
- }
18
+ } & OAuthAuthProvider.AuthOptions;
20
19
  export interface BaseRequestOptions {
21
20
  /** The maximum time to wait for a response in seconds. */
22
21
  timeoutInSeconds?: number;
@@ -29,12 +28,12 @@ export interface BaseRequestOptions {
29
28
  /** Additional headers to include in the request. */
30
29
  headers?: Record<string, string | core.Supplier<string | null | undefined> | null | undefined>;
31
30
  }
32
- export type NormalizedClientOptions<T extends BaseClientOptions> = T & {
31
+ export type NormalizedClientOptions<T extends BaseClientOptions = BaseClientOptions> = T & {
33
32
  logging: core.logging.Logger;
34
33
  authProvider?: core.AuthProvider;
35
34
  };
36
- export type NormalizedClientOptionsWithAuth<T extends BaseClientOptions> = NormalizedClientOptions<T> & {
35
+ export type NormalizedClientOptionsWithAuth<T extends BaseClientOptions = BaseClientOptions> = NormalizedClientOptions<T> & {
37
36
  authProvider: core.AuthProvider;
38
37
  };
39
- export declare function normalizeClientOptions<T extends BaseClientOptions>(options: T): NormalizedClientOptions<T>;
40
- export declare function normalizeClientOptionsWithAuth<T extends BaseClientOptions>(options: T): NormalizedClientOptionsWithAuth<T>;
38
+ export declare function normalizeClientOptions<T extends BaseClientOptions = BaseClientOptions>(options: T): NormalizedClientOptions<T>;
39
+ export declare function normalizeClientOptionsWithAuth<T extends BaseClientOptions = BaseClientOptions>(options: T): NormalizedClientOptionsWithAuth<T>;
@@ -6,8 +6,8 @@ export function normalizeClientOptions(options) {
6
6
  const headers = mergeHeaders({
7
7
  "X-Fern-Language": "JavaScript",
8
8
  "X-Fern-SDK-Name": "@kard-financial/sdk",
9
- "X-Fern-SDK-Version": "12.2.1",
10
- "User-Agent": "@kard-financial/sdk/12.2.1",
9
+ "X-Fern-SDK-Version": "12.4.0",
10
+ "User-Agent": "@kard-financial/sdk/12.4.0",
11
11
  "X-Fern-Runtime": core.RUNTIME.type,
12
12
  "X-Fern-Runtime-Version": core.RUNTIME.version,
13
13
  }, options === null || options === void 0 ? void 0 : options.headers);
@@ -17,7 +17,7 @@ export function normalizeClientOptionsWithAuth(options) {
17
17
  var _a;
18
18
  const normalized = normalizeClientOptions(options);
19
19
  const normalizedWithNoOpAuthProvider = withNoOpAuthProvider(normalized);
20
- (_a = normalized.authProvider) !== null && _a !== void 0 ? _a : (normalized.authProvider = new OAuthAuthProvider(normalizedWithNoOpAuthProvider));
20
+ (_a = normalized.authProvider) !== null && _a !== void 0 ? _a : (normalized.authProvider = OAuthAuthProvider.createInstance(normalizedWithNoOpAuthProvider));
21
21
  return normalized;
22
22
  }
23
23
  function withNoOpAuthProvider(options) {
@@ -6,9 +6,9 @@ import { TransactionsClient } from "./api/resources/transactions/client/Client.m
6
6
  import { UsersClient } from "./api/resources/users/client/Client.mjs";
7
7
  import type { BaseClientOptions, BaseRequestOptions } from "./BaseClient.mjs";
8
8
  import { type NormalizedClientOptionsWithAuth } from "./BaseClient.mjs";
9
+ import * as core from "./core/index.mjs";
9
10
  export declare namespace KardApiClient {
10
- interface Options extends BaseClientOptions {
11
- }
11
+ type Options = BaseClientOptions;
12
12
  interface RequestOptions extends BaseRequestOptions {
13
13
  }
14
14
  }
@@ -27,4 +27,15 @@ export declare class KardApiClient {
27
27
  get ping(): PingClient;
28
28
  get transactions(): TransactionsClient;
29
29
  get users(): UsersClient;
30
+ /**
31
+ * Make a passthrough request using the SDK's configured auth, retry, logging, etc.
32
+ * This is useful for making requests to endpoints not yet supported in the SDK.
33
+ * The input can be a URL string, URL object, or Request object. Relative paths are resolved against the configured base URL.
34
+ *
35
+ * @param {Request | string | URL} input - The URL, path, or Request object.
36
+ * @param {RequestInit} init - Standard fetch RequestInit options.
37
+ * @param {core.PassthroughRequest.RequestOptions} requestOptions - Per-request overrides (timeout, retries, headers, abort signal).
38
+ * @returns {Promise<Response>} A standard Response object.
39
+ */
40
+ fetch(input: Request | string | URL, init?: RequestInit, requestOptions?: core.PassthroughRequest.RequestOptions): Promise<Response>;
30
41
  }
@@ -1,4 +1,13 @@
1
1
  // This file was auto-generated by Fern from our API Definition.
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
+ };
2
11
  import { AuthClient } from "./api/resources/auth/client/Client.mjs";
3
12
  import { FilesClient } from "./api/resources/files/client/Client.mjs";
4
13
  import { NotificationsClient } from "./api/resources/notifications/client/Client.mjs";
@@ -6,6 +15,7 @@ import { PingClient } from "./api/resources/ping/client/Client.mjs";
6
15
  import { TransactionsClient } from "./api/resources/transactions/client/Client.mjs";
7
16
  import { UsersClient } from "./api/resources/users/client/Client.mjs";
8
17
  import { normalizeClientOptionsWithAuth } from "./BaseClient.mjs";
18
+ import * as core from "./core/index.mjs";
9
19
  export class KardApiClient {
10
20
  constructor(options = {}) {
11
21
  this._options = normalizeClientOptionsWithAuth(options);
@@ -34,4 +44,28 @@ export class KardApiClient {
34
44
  var _a;
35
45
  return ((_a = this._users) !== null && _a !== void 0 ? _a : (this._users = new UsersClient(this._options)));
36
46
  }
47
+ /**
48
+ * Make a passthrough request using the SDK's configured auth, retry, logging, etc.
49
+ * This is useful for making requests to endpoints not yet supported in the SDK.
50
+ * The input can be a URL string, URL object, or Request object. Relative paths are resolved against the configured base URL.
51
+ *
52
+ * @param {Request | string | URL} input - The URL, path, or Request object.
53
+ * @param {RequestInit} init - Standard fetch RequestInit options.
54
+ * @param {core.PassthroughRequest.RequestOptions} requestOptions - Per-request overrides (timeout, retries, headers, abort signal).
55
+ * @returns {Promise<Response>} A standard Response object.
56
+ */
57
+ fetch(input, init, requestOptions) {
58
+ return __awaiter(this, void 0, void 0, function* () {
59
+ var _a;
60
+ return core.makePassthroughRequest(input, init, {
61
+ baseUrl: (_a = this._options.baseUrl) !== null && _a !== void 0 ? _a : this._options.environment,
62
+ headers: this._options.headers,
63
+ timeoutInSeconds: this._options.timeoutInSeconds,
64
+ maxRetries: this._options.maxRetries,
65
+ fetch: this._options.fetch,
66
+ logging: this._options.logging,
67
+ getAuthHeaders: () => __awaiter(this, void 0, void 0, function* () { return (yield this._options.authProvider.getAuthRequest()).headers; }),
68
+ }, requestOptions);
69
+ });
70
+ }
37
71
  }
@@ -3,8 +3,7 @@ import { type NormalizedClientOptions } from "../../../../BaseClient.mjs";
3
3
  import * as core from "../../../../core/index.mjs";
4
4
  import type * as KardApi from "../../../index.mjs";
5
5
  export declare namespace AuthClient {
6
- interface Options extends BaseClientOptions {
7
- }
6
+ type Options = BaseClientOptions;
8
7
  interface RequestOptions extends BaseRequestOptions {
9
8
  }
10
9
  }
@@ -23,6 +23,7 @@ import { normalizeClientOptions } from "../../../../BaseClient.mjs";
23
23
  import { mergeHeaders, mergeOnlyDefinedHeaders } from "../../../../core/headers.mjs";
24
24
  import * as core from "../../../../core/index.mjs";
25
25
  import * as environments from "../../../../environments.mjs";
26
+ import { handleNonStatusCodeError } from "../../../../errors/handleNonStatusCodeError.mjs";
26
27
  import * as errors from "../../../../errors/index.mjs";
27
28
  export class AuthClient {
28
29
  constructor(options = {}) {
@@ -45,9 +46,7 @@ export class AuthClient {
45
46
  return __awaiter(this, void 0, void 0, function* () {
46
47
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
47
48
  const { "X-Kard-Target-Issuer": xKardTargetIssuer } = request, _body = __rest(request, ["X-Kard-Target-Issuer"]);
48
- const _headers = mergeHeaders((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({
49
- "X-Kard-Target-Issuer": xKardTargetIssuer != null ? xKardTargetIssuer : undefined,
50
- }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
49
+ const _headers = mergeHeaders((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, mergeOnlyDefinedHeaders({ "X-Kard-Target-Issuer": xKardTargetIssuer }), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
51
50
  const _response = yield core.fetcher({
52
51
  url: core.url.join((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.KardApiEnvironment.Production, "/v2/auth/token"),
53
52
  method: "POST",
@@ -72,26 +71,7 @@ export class AuthClient {
72
71
  rawResponse: _response.rawResponse,
73
72
  });
74
73
  }
75
- switch (_response.error.reason) {
76
- case "non-json":
77
- throw new errors.KardApiError({
78
- statusCode: _response.error.statusCode,
79
- body: _response.error.rawBody,
80
- rawResponse: _response.rawResponse,
81
- });
82
- case "body-is-null":
83
- throw new errors.KardApiError({
84
- statusCode: _response.error.statusCode,
85
- rawResponse: _response.rawResponse,
86
- });
87
- case "timeout":
88
- throw new errors.KardApiTimeoutError("Timeout exceeded when calling POST /v2/auth/token.");
89
- case "unknown":
90
- throw new errors.KardApiError({
91
- message: _response.error.errorMessage,
92
- rawResponse: _response.rawResponse,
93
- });
94
- }
74
+ return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v2/auth/token");
95
75
  });
96
76
  }
97
77
  }
@@ -0,0 +1,2 @@
1
+ export { AuthClient } from "./client/Client.mjs";
2
+ export * from "./client/index.mjs";
@@ -0,0 +1,3 @@
1
+ // This file was auto-generated by Fern from our API Definition.
2
+ export { AuthClient } from "./client/Client.mjs";
3
+ export * from "./client/index.mjs";
@@ -8,6 +8,10 @@ export class ConflictError extends errors.KardApiError {
8
8
  body: body,
9
9
  rawResponse: rawResponse,
10
10
  });
11
- Object.setPrototypeOf(this, ConflictError.prototype);
11
+ Object.setPrototypeOf(this, new.target.prototype);
12
+ if (Error.captureStackTrace) {
13
+ Error.captureStackTrace(this, this.constructor);
14
+ }
15
+ this.name = this.constructor.name;
12
16
  }
13
17
  }
@@ -8,6 +8,10 @@ export class DoesNotExistError extends errors.KardApiError {
8
8
  body: body,
9
9
  rawResponse: rawResponse,
10
10
  });
11
- Object.setPrototypeOf(this, DoesNotExistError.prototype);
11
+ Object.setPrototypeOf(this, new.target.prototype);
12
+ if (Error.captureStackTrace) {
13
+ Error.captureStackTrace(this, this.constructor);
14
+ }
15
+ this.name = this.constructor.name;
12
16
  }
13
17
  }
@@ -8,6 +8,10 @@ export class ForbiddenError extends errors.KardApiError {
8
8
  body: body,
9
9
  rawResponse: rawResponse,
10
10
  });
11
- Object.setPrototypeOf(this, ForbiddenError.prototype);
11
+ Object.setPrototypeOf(this, new.target.prototype);
12
+ if (Error.captureStackTrace) {
13
+ Error.captureStackTrace(this, this.constructor);
14
+ }
15
+ this.name = this.constructor.name;
12
16
  }
13
17
  }
@@ -8,6 +8,10 @@ export class InternalServerError extends errors.KardApiError {
8
8
  body: body,
9
9
  rawResponse: rawResponse,
10
10
  });
11
- Object.setPrototypeOf(this, InternalServerError.prototype);
11
+ Object.setPrototypeOf(this, new.target.prototype);
12
+ if (Error.captureStackTrace) {
13
+ Error.captureStackTrace(this, this.constructor);
14
+ }
15
+ this.name = this.constructor.name;
12
16
  }
13
17
  }