splitit-payments-sdk 1.0.5

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 (552) hide show
  1. package/LICENSE +28 -0
  2. package/README.md +113 -0
  3. package/dist/cjs/authProvider.js +47 -0
  4. package/dist/cjs/authProvider.js.map +1 -0
  5. package/dist/cjs/authentication.js +11 -0
  6. package/dist/cjs/authentication.js.map +1 -0
  7. package/dist/cjs/client.js +120 -0
  8. package/dist/cjs/client.js.map +1 -0
  9. package/dist/cjs/clientAdapter.js +10 -0
  10. package/dist/cjs/clientAdapter.js.map +1 -0
  11. package/dist/cjs/clientInterface.js +8 -0
  12. package/dist/cjs/clientInterface.js.map +1 -0
  13. package/dist/cjs/configuration.js +15 -0
  14. package/dist/cjs/configuration.js.map +1 -0
  15. package/dist/cjs/controllers/baseController.js +17 -0
  16. package/dist/cjs/controllers/baseController.js.map +1 -0
  17. package/dist/cjs/controllers/installmentPlanController.js +342 -0
  18. package/dist/cjs/controllers/installmentPlanController.js.map +1 -0
  19. package/dist/cjs/controllers/oAuthAuthorizationController.js +74 -0
  20. package/dist/cjs/controllers/oAuthAuthorizationController.js.map +1 -0
  21. package/dist/cjs/core.js +10 -0
  22. package/dist/cjs/core.js.map +1 -0
  23. package/dist/cjs/defaultConfiguration.js +25 -0
  24. package/dist/cjs/defaultConfiguration.js.map +1 -0
  25. package/dist/cjs/errors/failedResponseError.js +19 -0
  26. package/dist/cjs/errors/failedResponseError.js.map +1 -0
  27. package/dist/cjs/errors/oAuthProviderError.js +19 -0
  28. package/dist/cjs/errors/oAuthProviderError.js.map +1 -0
  29. package/dist/cjs/errors/planErrorResponseError.js +19 -0
  30. package/dist/cjs/errors/planErrorResponseError.js.map +1 -0
  31. package/dist/cjs/index.js +57 -0
  32. package/dist/cjs/index.js.map +1 -0
  33. package/dist/cjs/models/addressData.js +18 -0
  34. package/dist/cjs/models/addressData.js.map +1 -0
  35. package/dist/cjs/models/addressDataModel.js +18 -0
  36. package/dist/cjs/models/addressDataModel.js.map +1 -0
  37. package/dist/cjs/models/authorizationModel.js +27 -0
  38. package/dist/cjs/models/authorizationModel.js.map +1 -0
  39. package/dist/cjs/models/bluesnapVaultedShopperToken.js +14 -0
  40. package/dist/cjs/models/bluesnapVaultedShopperToken.js.map +1 -0
  41. package/dist/cjs/models/cardBrandEnum.js +29 -0
  42. package/dist/cjs/models/cardBrandEnum.js.map +1 -0
  43. package/dist/cjs/models/cardData.js +21 -0
  44. package/dist/cjs/models/cardData.js.map +1 -0
  45. package/dist/cjs/models/cardTypeEnum.js +27 -0
  46. package/dist/cjs/models/cardTypeEnum.js.map +1 -0
  47. package/dist/cjs/models/checkInstallmentsEligibilityRequest.js +19 -0
  48. package/dist/cjs/models/checkInstallmentsEligibilityRequest.js.map +1 -0
  49. package/dist/cjs/models/eligibilityTermsAndConditionResponse.js +15 -0
  50. package/dist/cjs/models/eligibilityTermsAndConditionResponse.js.map +1 -0
  51. package/dist/cjs/models/error.js +15 -0
  52. package/dist/cjs/models/error.js.map +1 -0
  53. package/dist/cjs/models/errorExtended.js +16 -0
  54. package/dist/cjs/models/errorExtended.js.map +1 -0
  55. package/dist/cjs/models/eventsEndpointsModel.js +13 -0
  56. package/dist/cjs/models/eventsEndpointsModel.js.map +1 -0
  57. package/dist/cjs/models/gatewayTokenData.js +14 -0
  58. package/dist/cjs/models/gatewayTokenData.js.map +1 -0
  59. package/dist/cjs/models/gwAuthorizationStatusEnum.js +26 -0
  60. package/dist/cjs/models/gwAuthorizationStatusEnum.js.map +1 -0
  61. package/dist/cjs/models/identifierContract.js +15 -0
  62. package/dist/cjs/models/identifierContract.js.map +1 -0
  63. package/dist/cjs/models/initiatePlanResponse.js +27 -0
  64. package/dist/cjs/models/initiatePlanResponse.js.map +1 -0
  65. package/dist/cjs/models/initiateRedirectionEndpointsModel.js +15 -0
  66. package/dist/cjs/models/initiateRedirectionEndpointsModel.js.map +1 -0
  67. package/dist/cjs/models/installment.js +17 -0
  68. package/dist/cjs/models/installment.js.map +1 -0
  69. package/dist/cjs/models/installmentPlanCreateRequest.js +44 -0
  70. package/dist/cjs/models/installmentPlanCreateRequest.js.map +1 -0
  71. package/dist/cjs/models/installmentPlanCreateResponse.js +44 -0
  72. package/dist/cjs/models/installmentPlanCreateResponse.js.map +1 -0
  73. package/dist/cjs/models/installmentPlanGetResponse.js +46 -0
  74. package/dist/cjs/models/installmentPlanGetResponse.js.map +1 -0
  75. package/dist/cjs/models/installmentPlanInitiateRequest.js +40 -0
  76. package/dist/cjs/models/installmentPlanInitiateRequest.js.map +1 -0
  77. package/dist/cjs/models/installmentPlanRefundRequest.js +16 -0
  78. package/dist/cjs/models/installmentPlanRefundRequest.js.map +1 -0
  79. package/dist/cjs/models/installmentPlanRefundResponse.js +20 -0
  80. package/dist/cjs/models/installmentPlanRefundResponse.js.map +1 -0
  81. package/dist/cjs/models/installmentPlanSearchResponse.js +17 -0
  82. package/dist/cjs/models/installmentPlanSearchResponse.js.map +1 -0
  83. package/dist/cjs/models/installmentPlanUpdateRequest.js +18 -0
  84. package/dist/cjs/models/installmentPlanUpdateRequest.js.map +1 -0
  85. package/dist/cjs/models/installmentPlanUpdateRequestByIdentifier.js +20 -0
  86. package/dist/cjs/models/installmentPlanUpdateRequestByIdentifier.js.map +1 -0
  87. package/dist/cjs/models/installmentPlanUpdateResponse.js +19 -0
  88. package/dist/cjs/models/installmentPlanUpdateResponse.js.map +1 -0
  89. package/dist/cjs/models/installmentStatusEnum.js +23 -0
  90. package/dist/cjs/models/installmentStatusEnum.js.map +1 -0
  91. package/dist/cjs/models/installmentsEligibilityResponse.js +18 -0
  92. package/dist/cjs/models/installmentsEligibilityResponse.js.map +1 -0
  93. package/dist/cjs/models/linksData.js +16 -0
  94. package/dist/cjs/models/linksData.js.map +1 -0
  95. package/dist/cjs/models/linksModel.js +15 -0
  96. package/dist/cjs/models/linksModel.js.map +1 -0
  97. package/dist/cjs/models/mockerShopperToken.js +14 -0
  98. package/dist/cjs/models/mockerShopperToken.js.map +1 -0
  99. package/dist/cjs/models/oAuthProviderErrorEnum.js +26 -0
  100. package/dist/cjs/models/oAuthProviderErrorEnum.js.map +1 -0
  101. package/dist/cjs/models/oAuthScopeOAuth2ProductionEnum.js +21 -0
  102. package/dist/cjs/models/oAuthScopeOAuth2ProductionEnum.js.map +1 -0
  103. package/dist/cjs/models/oAuthScopeOAuth2SandboxEnum.js +21 -0
  104. package/dist/cjs/models/oAuthScopeOAuth2SandboxEnum.js.map +1 -0
  105. package/dist/cjs/models/oAuthToken.js +18 -0
  106. package/dist/cjs/models/oAuthToken.js.map +1 -0
  107. package/dist/cjs/models/paymentInfo.js +15 -0
  108. package/dist/cjs/models/paymentInfo.js.map +1 -0
  109. package/dist/cjs/models/paymentMethodModel.js +30 -0
  110. package/dist/cjs/models/paymentMethodModel.js.map +1 -0
  111. package/dist/cjs/models/paymentMethodTypeEnum.js +25 -0
  112. package/dist/cjs/models/paymentMethodTypeEnum.js.map +1 -0
  113. package/dist/cjs/models/paymentPlanOptionModel.js +20 -0
  114. package/dist/cjs/models/paymentPlanOptionModel.js.map +1 -0
  115. package/dist/cjs/models/planData.js +31 -0
  116. package/dist/cjs/models/planData.js.map +1 -0
  117. package/dist/cjs/models/planDataModel.js +22 -0
  118. package/dist/cjs/models/planDataModel.js.map +1 -0
  119. package/dist/cjs/models/planStatusEnum.js +25 -0
  120. package/dist/cjs/models/planStatusEnum.js.map +1 -0
  121. package/dist/cjs/models/processingData.js +16 -0
  122. package/dist/cjs/models/processingData.js.map +1 -0
  123. package/dist/cjs/models/purchaseMethodEnum.js +23 -0
  124. package/dist/cjs/models/purchaseMethodEnum.js.map +1 -0
  125. package/dist/cjs/models/redirectionEndpointsModel.js +16 -0
  126. package/dist/cjs/models/redirectionEndpointsModel.js.map +1 -0
  127. package/dist/cjs/models/refundModel.js +20 -0
  128. package/dist/cjs/models/refundModel.js.map +1 -0
  129. package/dist/cjs/models/refundStatusEnum.js +23 -0
  130. package/dist/cjs/models/refundStatusEnum.js.map +1 -0
  131. package/dist/cjs/models/refundStrategyEnum.js +24 -0
  132. package/dist/cjs/models/refundStrategyEnum.js.map +1 -0
  133. package/dist/cjs/models/refundSummary.js +16 -0
  134. package/dist/cjs/models/refundSummary.js.map +1 -0
  135. package/dist/cjs/models/searchInstallmentPlanResponseItem.js +46 -0
  136. package/dist/cjs/models/searchInstallmentPlanResponseItem.js.map +1 -0
  137. package/dist/cjs/models/shippingStatusEnum.js +23 -0
  138. package/dist/cjs/models/shippingStatusEnum.js.map +1 -0
  139. package/dist/cjs/models/shopperData.js +17 -0
  140. package/dist/cjs/models/shopperData.js.map +1 -0
  141. package/dist/cjs/models/spreedlyToken.js +14 -0
  142. package/dist/cjs/models/spreedlyToken.js.map +1 -0
  143. package/dist/cjs/models/testModesEnum.js +24 -0
  144. package/dist/cjs/models/testModesEnum.js.map +1 -0
  145. package/dist/cjs/models/threeDSData.js +18 -0
  146. package/dist/cjs/models/threeDSData.js.map +1 -0
  147. package/dist/cjs/models/threeDsRedirectDataV3.js +16 -0
  148. package/dist/cjs/models/threeDsRedirectDataV3.js.map +1 -0
  149. package/dist/cjs/models/uxSettingsModel.js +16 -0
  150. package/dist/cjs/models/uxSettingsModel.js.map +1 -0
  151. package/dist/cjs/models/verifyAuthorizationResponse.js +19 -0
  152. package/dist/cjs/models/verifyAuthorizationResponse.js.map +1 -0
  153. package/dist/cjs/oAuth2ProductionManager.js +77 -0
  154. package/dist/cjs/oAuth2ProductionManager.js.map +1 -0
  155. package/dist/cjs/oAuth2SandboxManager.js +77 -0
  156. package/dist/cjs/oAuth2SandboxManager.js.map +1 -0
  157. package/dist/cjs/schema.js +10 -0
  158. package/dist/cjs/schema.js.map +1 -0
  159. package/dist/esm/authProvider.js +44 -0
  160. package/dist/esm/authProvider.js.map +1 -0
  161. package/dist/esm/authentication.js +8 -0
  162. package/dist/esm/authentication.js.map +1 -0
  163. package/dist/esm/client.js +98 -0
  164. package/dist/esm/client.js.map +1 -0
  165. package/dist/esm/clientAdapter.js +7 -0
  166. package/dist/esm/clientAdapter.js.map +1 -0
  167. package/dist/esm/clientInterface.js +7 -0
  168. package/dist/esm/clientInterface.js.map +1 -0
  169. package/dist/esm/configuration.js +12 -0
  170. package/dist/esm/configuration.js.map +1 -0
  171. package/dist/esm/controllers/baseController.js +12 -0
  172. package/dist/esm/controllers/baseController.js.map +1 -0
  173. package/dist/esm/controllers/installmentPlanController.js +281 -0
  174. package/dist/esm/controllers/installmentPlanController.js.map +1 -0
  175. package/dist/esm/controllers/oAuthAuthorizationController.js +54 -0
  176. package/dist/esm/controllers/oAuthAuthorizationController.js.map +1 -0
  177. package/dist/esm/core.js +7 -0
  178. package/dist/esm/core.js.map +1 -0
  179. package/dist/esm/defaultConfiguration.js +22 -0
  180. package/dist/esm/defaultConfiguration.js.map +1 -0
  181. package/dist/esm/errors/failedResponseError.js +9 -0
  182. package/dist/esm/errors/failedResponseError.js.map +1 -0
  183. package/dist/esm/errors/oAuthProviderError.js +9 -0
  184. package/dist/esm/errors/oAuthProviderError.js.map +1 -0
  185. package/dist/esm/errors/planErrorResponseError.js +9 -0
  186. package/dist/esm/errors/planErrorResponseError.js.map +1 -0
  187. package/dist/esm/index.js +32 -0
  188. package/dist/esm/index.js.map +1 -0
  189. package/dist/esm/models/addressData.js +15 -0
  190. package/dist/esm/models/addressData.js.map +1 -0
  191. package/dist/esm/models/addressDataModel.js +15 -0
  192. package/dist/esm/models/addressDataModel.js.map +1 -0
  193. package/dist/esm/models/authorizationModel.js +24 -0
  194. package/dist/esm/models/authorizationModel.js.map +1 -0
  195. package/dist/esm/models/bluesnapVaultedShopperToken.js +11 -0
  196. package/dist/esm/models/bluesnapVaultedShopperToken.js.map +1 -0
  197. package/dist/esm/models/cardBrandEnum.js +26 -0
  198. package/dist/esm/models/cardBrandEnum.js.map +1 -0
  199. package/dist/esm/models/cardData.js +18 -0
  200. package/dist/esm/models/cardData.js.map +1 -0
  201. package/dist/esm/models/cardTypeEnum.js +24 -0
  202. package/dist/esm/models/cardTypeEnum.js.map +1 -0
  203. package/dist/esm/models/checkInstallmentsEligibilityRequest.js +16 -0
  204. package/dist/esm/models/checkInstallmentsEligibilityRequest.js.map +1 -0
  205. package/dist/esm/models/eligibilityTermsAndConditionResponse.js +12 -0
  206. package/dist/esm/models/eligibilityTermsAndConditionResponse.js.map +1 -0
  207. package/dist/esm/models/error.js +12 -0
  208. package/dist/esm/models/error.js.map +1 -0
  209. package/dist/esm/models/errorExtended.js +13 -0
  210. package/dist/esm/models/errorExtended.js.map +1 -0
  211. package/dist/esm/models/eventsEndpointsModel.js +10 -0
  212. package/dist/esm/models/eventsEndpointsModel.js.map +1 -0
  213. package/dist/esm/models/gatewayTokenData.js +11 -0
  214. package/dist/esm/models/gatewayTokenData.js.map +1 -0
  215. package/dist/esm/models/gwAuthorizationStatusEnum.js +23 -0
  216. package/dist/esm/models/gwAuthorizationStatusEnum.js.map +1 -0
  217. package/dist/esm/models/identifierContract.js +12 -0
  218. package/dist/esm/models/identifierContract.js.map +1 -0
  219. package/dist/esm/models/initiatePlanResponse.js +24 -0
  220. package/dist/esm/models/initiatePlanResponse.js.map +1 -0
  221. package/dist/esm/models/initiateRedirectionEndpointsModel.js +12 -0
  222. package/dist/esm/models/initiateRedirectionEndpointsModel.js.map +1 -0
  223. package/dist/esm/models/installment.js +14 -0
  224. package/dist/esm/models/installment.js.map +1 -0
  225. package/dist/esm/models/installmentPlanCreateRequest.js +41 -0
  226. package/dist/esm/models/installmentPlanCreateRequest.js.map +1 -0
  227. package/dist/esm/models/installmentPlanCreateResponse.js +41 -0
  228. package/dist/esm/models/installmentPlanCreateResponse.js.map +1 -0
  229. package/dist/esm/models/installmentPlanGetResponse.js +43 -0
  230. package/dist/esm/models/installmentPlanGetResponse.js.map +1 -0
  231. package/dist/esm/models/installmentPlanInitiateRequest.js +37 -0
  232. package/dist/esm/models/installmentPlanInitiateRequest.js.map +1 -0
  233. package/dist/esm/models/installmentPlanRefundRequest.js +13 -0
  234. package/dist/esm/models/installmentPlanRefundRequest.js.map +1 -0
  235. package/dist/esm/models/installmentPlanRefundResponse.js +17 -0
  236. package/dist/esm/models/installmentPlanRefundResponse.js.map +1 -0
  237. package/dist/esm/models/installmentPlanSearchResponse.js +14 -0
  238. package/dist/esm/models/installmentPlanSearchResponse.js.map +1 -0
  239. package/dist/esm/models/installmentPlanUpdateRequest.js +15 -0
  240. package/dist/esm/models/installmentPlanUpdateRequest.js.map +1 -0
  241. package/dist/esm/models/installmentPlanUpdateRequestByIdentifier.js +17 -0
  242. package/dist/esm/models/installmentPlanUpdateRequestByIdentifier.js.map +1 -0
  243. package/dist/esm/models/installmentPlanUpdateResponse.js +16 -0
  244. package/dist/esm/models/installmentPlanUpdateResponse.js.map +1 -0
  245. package/dist/esm/models/installmentStatusEnum.js +20 -0
  246. package/dist/esm/models/installmentStatusEnum.js.map +1 -0
  247. package/dist/esm/models/installmentsEligibilityResponse.js +15 -0
  248. package/dist/esm/models/installmentsEligibilityResponse.js.map +1 -0
  249. package/dist/esm/models/linksData.js +13 -0
  250. package/dist/esm/models/linksData.js.map +1 -0
  251. package/dist/esm/models/linksModel.js +12 -0
  252. package/dist/esm/models/linksModel.js.map +1 -0
  253. package/dist/esm/models/mockerShopperToken.js +11 -0
  254. package/dist/esm/models/mockerShopperToken.js.map +1 -0
  255. package/dist/esm/models/oAuthProviderErrorEnum.js +23 -0
  256. package/dist/esm/models/oAuthProviderErrorEnum.js.map +1 -0
  257. package/dist/esm/models/oAuthScopeOAuth2ProductionEnum.js +18 -0
  258. package/dist/esm/models/oAuthScopeOAuth2ProductionEnum.js.map +1 -0
  259. package/dist/esm/models/oAuthScopeOAuth2SandboxEnum.js +18 -0
  260. package/dist/esm/models/oAuthScopeOAuth2SandboxEnum.js.map +1 -0
  261. package/dist/esm/models/oAuthToken.js +15 -0
  262. package/dist/esm/models/oAuthToken.js.map +1 -0
  263. package/dist/esm/models/paymentInfo.js +12 -0
  264. package/dist/esm/models/paymentInfo.js.map +1 -0
  265. package/dist/esm/models/paymentMethodModel.js +27 -0
  266. package/dist/esm/models/paymentMethodModel.js.map +1 -0
  267. package/dist/esm/models/paymentMethodTypeEnum.js +22 -0
  268. package/dist/esm/models/paymentMethodTypeEnum.js.map +1 -0
  269. package/dist/esm/models/paymentPlanOptionModel.js +17 -0
  270. package/dist/esm/models/paymentPlanOptionModel.js.map +1 -0
  271. package/dist/esm/models/planData.js +28 -0
  272. package/dist/esm/models/planData.js.map +1 -0
  273. package/dist/esm/models/planDataModel.js +19 -0
  274. package/dist/esm/models/planDataModel.js.map +1 -0
  275. package/dist/esm/models/planStatusEnum.js +22 -0
  276. package/dist/esm/models/planStatusEnum.js.map +1 -0
  277. package/dist/esm/models/processingData.js +13 -0
  278. package/dist/esm/models/processingData.js.map +1 -0
  279. package/dist/esm/models/purchaseMethodEnum.js +20 -0
  280. package/dist/esm/models/purchaseMethodEnum.js.map +1 -0
  281. package/dist/esm/models/redirectionEndpointsModel.js +13 -0
  282. package/dist/esm/models/redirectionEndpointsModel.js.map +1 -0
  283. package/dist/esm/models/refundModel.js +17 -0
  284. package/dist/esm/models/refundModel.js.map +1 -0
  285. package/dist/esm/models/refundStatusEnum.js +20 -0
  286. package/dist/esm/models/refundStatusEnum.js.map +1 -0
  287. package/dist/esm/models/refundStrategyEnum.js +21 -0
  288. package/dist/esm/models/refundStrategyEnum.js.map +1 -0
  289. package/dist/esm/models/refundSummary.js +13 -0
  290. package/dist/esm/models/refundSummary.js.map +1 -0
  291. package/dist/esm/models/searchInstallmentPlanResponseItem.js +43 -0
  292. package/dist/esm/models/searchInstallmentPlanResponseItem.js.map +1 -0
  293. package/dist/esm/models/shippingStatusEnum.js +20 -0
  294. package/dist/esm/models/shippingStatusEnum.js.map +1 -0
  295. package/dist/esm/models/shopperData.js +14 -0
  296. package/dist/esm/models/shopperData.js.map +1 -0
  297. package/dist/esm/models/spreedlyToken.js +11 -0
  298. package/dist/esm/models/spreedlyToken.js.map +1 -0
  299. package/dist/esm/models/testModesEnum.js +21 -0
  300. package/dist/esm/models/testModesEnum.js.map +1 -0
  301. package/dist/esm/models/threeDSData.js +15 -0
  302. package/dist/esm/models/threeDSData.js.map +1 -0
  303. package/dist/esm/models/threeDsRedirectDataV3.js +13 -0
  304. package/dist/esm/models/threeDsRedirectDataV3.js.map +1 -0
  305. package/dist/esm/models/uxSettingsModel.js +13 -0
  306. package/dist/esm/models/uxSettingsModel.js.map +1 -0
  307. package/dist/esm/models/verifyAuthorizationResponse.js +16 -0
  308. package/dist/esm/models/verifyAuthorizationResponse.js.map +1 -0
  309. package/dist/esm/oAuth2ProductionManager.js +46 -0
  310. package/dist/esm/oAuth2ProductionManager.js.map +1 -0
  311. package/dist/esm/oAuth2SandboxManager.js +46 -0
  312. package/dist/esm/oAuth2SandboxManager.js.map +1 -0
  313. package/dist/esm/schema.js +7 -0
  314. package/dist/esm/schema.js.map +1 -0
  315. package/dist/types/authProvider.d.ts +13 -0
  316. package/dist/types/authProvider.d.ts.map +1 -0
  317. package/dist/types/authentication.d.ts +8 -0
  318. package/dist/types/authentication.d.ts.map +1 -0
  319. package/dist/types/client.d.ts +24 -0
  320. package/dist/types/client.d.ts.map +1 -0
  321. package/dist/types/clientAdapter.d.ts +7 -0
  322. package/dist/types/clientAdapter.d.ts.map +1 -0
  323. package/dist/types/clientInterface.d.ts +15 -0
  324. package/dist/types/clientInterface.d.ts.map +1 -0
  325. package/dist/types/configuration.d.ts +42 -0
  326. package/dist/types/configuration.d.ts.map +1 -0
  327. package/dist/types/controllers/baseController.d.ts +13 -0
  328. package/dist/types/controllers/baseController.d.ts.map +1 -0
  329. package/dist/types/controllers/installmentPlanController.d.ts +98 -0
  330. package/dist/types/controllers/installmentPlanController.d.ts.map +1 -0
  331. package/dist/types/controllers/oAuthAuthorizationController.d.ts +27 -0
  332. package/dist/types/controllers/oAuthAuthorizationController.d.ts.map +1 -0
  333. package/dist/types/core.d.ts +7 -0
  334. package/dist/types/core.d.ts.map +1 -0
  335. package/dist/types/defaultConfiguration.d.ts +12 -0
  336. package/dist/types/defaultConfiguration.d.ts.map +1 -0
  337. package/dist/types/errors/failedResponseError.d.ts +18 -0
  338. package/dist/types/errors/failedResponseError.d.ts.map +1 -0
  339. package/dist/types/errors/oAuthProviderError.d.ts +25 -0
  340. package/dist/types/errors/oAuthProviderError.d.ts.map +1 -0
  341. package/dist/types/errors/planErrorResponseError.d.ts +21 -0
  342. package/dist/types/errors/planErrorResponseError.d.ts.map +1 -0
  343. package/dist/types/index.d.ts +80 -0
  344. package/dist/types/index.d.ts.map +1 -0
  345. package/dist/types/models/addressData.d.ts +16 -0
  346. package/dist/types/models/addressData.d.ts.map +1 -0
  347. package/dist/types/models/addressDataModel.d.ts +16 -0
  348. package/dist/types/models/addressDataModel.d.ts.map +1 -0
  349. package/dist/types/models/authorizationModel.d.ts +22 -0
  350. package/dist/types/models/authorizationModel.d.ts.map +1 -0
  351. package/dist/types/models/bluesnapVaultedShopperToken.d.ts +12 -0
  352. package/dist/types/models/bluesnapVaultedShopperToken.d.ts.map +1 -0
  353. package/dist/types/models/cardBrandEnum.d.ts +25 -0
  354. package/dist/types/models/cardBrandEnum.d.ts.map +1 -0
  355. package/dist/types/models/cardData.d.ts +19 -0
  356. package/dist/types/models/cardData.d.ts.map +1 -0
  357. package/dist/types/models/cardTypeEnum.d.ts +23 -0
  358. package/dist/types/models/cardTypeEnum.d.ts.map +1 -0
  359. package/dist/types/models/checkInstallmentsEligibilityRequest.d.ts +17 -0
  360. package/dist/types/models/checkInstallmentsEligibilityRequest.d.ts.map +1 -0
  361. package/dist/types/models/eligibilityTermsAndConditionResponse.d.ts +13 -0
  362. package/dist/types/models/eligibilityTermsAndConditionResponse.d.ts.map +1 -0
  363. package/dist/types/models/error.d.ts +13 -0
  364. package/dist/types/models/error.d.ts.map +1 -0
  365. package/dist/types/models/errorExtended.d.ts +14 -0
  366. package/dist/types/models/errorExtended.d.ts.map +1 -0
  367. package/dist/types/models/eventsEndpointsModel.d.ts +11 -0
  368. package/dist/types/models/eventsEndpointsModel.d.ts.map +1 -0
  369. package/dist/types/models/gatewayTokenData.d.ts +12 -0
  370. package/dist/types/models/gatewayTokenData.d.ts.map +1 -0
  371. package/dist/types/models/gwAuthorizationStatusEnum.d.ts +22 -0
  372. package/dist/types/models/gwAuthorizationStatusEnum.d.ts.map +1 -0
  373. package/dist/types/models/identifierContract.d.ts +13 -0
  374. package/dist/types/models/identifierContract.d.ts.map +1 -0
  375. package/dist/types/models/initiatePlanResponse.d.ts +25 -0
  376. package/dist/types/models/initiatePlanResponse.d.ts.map +1 -0
  377. package/dist/types/models/initiateRedirectionEndpointsModel.d.ts +13 -0
  378. package/dist/types/models/initiateRedirectionEndpointsModel.d.ts.map +1 -0
  379. package/dist/types/models/installment.d.ts +15 -0
  380. package/dist/types/models/installment.d.ts.map +1 -0
  381. package/dist/types/models/installmentPlanCreateRequest.d.ts +27 -0
  382. package/dist/types/models/installmentPlanCreateRequest.d.ts.map +1 -0
  383. package/dist/types/models/installmentPlanCreateResponse.d.ts +33 -0
  384. package/dist/types/models/installmentPlanCreateResponse.d.ts.map +1 -0
  385. package/dist/types/models/installmentPlanGetResponse.d.ts +35 -0
  386. package/dist/types/models/installmentPlanGetResponse.d.ts.map +1 -0
  387. package/dist/types/models/installmentPlanInitiateRequest.d.ts +26 -0
  388. package/dist/types/models/installmentPlanInitiateRequest.d.ts.map +1 -0
  389. package/dist/types/models/installmentPlanRefundRequest.d.ts +14 -0
  390. package/dist/types/models/installmentPlanRefundRequest.d.ts.map +1 -0
  391. package/dist/types/models/installmentPlanRefundResponse.d.ts +18 -0
  392. package/dist/types/models/installmentPlanRefundResponse.d.ts.map +1 -0
  393. package/dist/types/models/installmentPlanSearchResponse.d.ts +12 -0
  394. package/dist/types/models/installmentPlanSearchResponse.d.ts.map +1 -0
  395. package/dist/types/models/installmentPlanUpdateRequest.d.ts +16 -0
  396. package/dist/types/models/installmentPlanUpdateRequest.d.ts.map +1 -0
  397. package/dist/types/models/installmentPlanUpdateRequestByIdentifier.d.ts +18 -0
  398. package/dist/types/models/installmentPlanUpdateRequestByIdentifier.d.ts.map +1 -0
  399. package/dist/types/models/installmentPlanUpdateResponse.d.ts +17 -0
  400. package/dist/types/models/installmentPlanUpdateResponse.d.ts.map +1 -0
  401. package/dist/types/models/installmentStatusEnum.d.ts +19 -0
  402. package/dist/types/models/installmentStatusEnum.d.ts.map +1 -0
  403. package/dist/types/models/installmentsEligibilityResponse.d.ts +13 -0
  404. package/dist/types/models/installmentsEligibilityResponse.d.ts.map +1 -0
  405. package/dist/types/models/linksData.d.ts +14 -0
  406. package/dist/types/models/linksData.d.ts.map +1 -0
  407. package/dist/types/models/linksModel.d.ts +13 -0
  408. package/dist/types/models/linksModel.d.ts.map +1 -0
  409. package/dist/types/models/mockerShopperToken.d.ts +12 -0
  410. package/dist/types/models/mockerShopperToken.d.ts.map +1 -0
  411. package/dist/types/models/oAuthProviderErrorEnum.d.ts +22 -0
  412. package/dist/types/models/oAuthProviderErrorEnum.d.ts.map +1 -0
  413. package/dist/types/models/oAuthScopeOAuth2ProductionEnum.d.ts +17 -0
  414. package/dist/types/models/oAuthScopeOAuth2ProductionEnum.d.ts.map +1 -0
  415. package/dist/types/models/oAuthScopeOAuth2SandboxEnum.d.ts +17 -0
  416. package/dist/types/models/oAuthScopeOAuth2SandboxEnum.d.ts.map +1 -0
  417. package/dist/types/models/oAuthToken.d.ts +29 -0
  418. package/dist/types/models/oAuthToken.d.ts.map +1 -0
  419. package/dist/types/models/paymentInfo.d.ts +13 -0
  420. package/dist/types/models/paymentInfo.d.ts.map +1 -0
  421. package/dist/types/models/paymentMethodModel.d.ts +22 -0
  422. package/dist/types/models/paymentMethodModel.d.ts.map +1 -0
  423. package/dist/types/models/paymentMethodTypeEnum.d.ts +21 -0
  424. package/dist/types/models/paymentMethodTypeEnum.d.ts.map +1 -0
  425. package/dist/types/models/paymentPlanOptionModel.d.ts +18 -0
  426. package/dist/types/models/paymentPlanOptionModel.d.ts.map +1 -0
  427. package/dist/types/models/planData.d.ts +23 -0
  428. package/dist/types/models/planData.d.ts.map +1 -0
  429. package/dist/types/models/planDataModel.d.ts +20 -0
  430. package/dist/types/models/planDataModel.d.ts.map +1 -0
  431. package/dist/types/models/planStatusEnum.d.ts +21 -0
  432. package/dist/types/models/planStatusEnum.d.ts.map +1 -0
  433. package/dist/types/models/processingData.d.ts +14 -0
  434. package/dist/types/models/processingData.d.ts.map +1 -0
  435. package/dist/types/models/purchaseMethodEnum.d.ts +19 -0
  436. package/dist/types/models/purchaseMethodEnum.d.ts.map +1 -0
  437. package/dist/types/models/redirectionEndpointsModel.d.ts +14 -0
  438. package/dist/types/models/redirectionEndpointsModel.d.ts.map +1 -0
  439. package/dist/types/models/refundModel.d.ts +18 -0
  440. package/dist/types/models/refundModel.d.ts.map +1 -0
  441. package/dist/types/models/refundStatusEnum.d.ts +19 -0
  442. package/dist/types/models/refundStatusEnum.d.ts.map +1 -0
  443. package/dist/types/models/refundStrategyEnum.d.ts +20 -0
  444. package/dist/types/models/refundStrategyEnum.d.ts.map +1 -0
  445. package/dist/types/models/refundSummary.d.ts +14 -0
  446. package/dist/types/models/refundSummary.d.ts.map +1 -0
  447. package/dist/types/models/searchInstallmentPlanResponseItem.d.ts +35 -0
  448. package/dist/types/models/searchInstallmentPlanResponseItem.d.ts.map +1 -0
  449. package/dist/types/models/shippingStatusEnum.d.ts +19 -0
  450. package/dist/types/models/shippingStatusEnum.d.ts.map +1 -0
  451. package/dist/types/models/shopperData.d.ts +15 -0
  452. package/dist/types/models/shopperData.d.ts.map +1 -0
  453. package/dist/types/models/spreedlyToken.d.ts +12 -0
  454. package/dist/types/models/spreedlyToken.d.ts.map +1 -0
  455. package/dist/types/models/testModesEnum.d.ts +20 -0
  456. package/dist/types/models/testModesEnum.d.ts.map +1 -0
  457. package/dist/types/models/threeDSData.d.ts +16 -0
  458. package/dist/types/models/threeDSData.d.ts.map +1 -0
  459. package/dist/types/models/threeDsRedirectDataV3.d.ts +14 -0
  460. package/dist/types/models/threeDsRedirectDataV3.d.ts.map +1 -0
  461. package/dist/types/models/uxSettingsModel.d.ts +11 -0
  462. package/dist/types/models/uxSettingsModel.d.ts.map +1 -0
  463. package/dist/types/models/verifyAuthorizationResponse.d.ts +14 -0
  464. package/dist/types/models/verifyAuthorizationResponse.d.ts.map +1 -0
  465. package/dist/types/oAuth2ProductionManager.d.ts +28 -0
  466. package/dist/types/oAuth2ProductionManager.d.ts.map +1 -0
  467. package/dist/types/oAuth2SandboxManager.d.ts +28 -0
  468. package/dist/types/oAuth2SandboxManager.d.ts.map +1 -0
  469. package/dist/types/schema.d.ts +7 -0
  470. package/dist/types/schema.d.ts.map +1 -0
  471. package/package.json +74 -0
  472. package/src/authProvider.ts +97 -0
  473. package/src/authentication.ts +8 -0
  474. package/src/client.ts +169 -0
  475. package/src/clientAdapter.ts +7 -0
  476. package/src/clientInterface.ts +27 -0
  477. package/src/configuration.ts +50 -0
  478. package/src/controllers/baseController.ts +20 -0
  479. package/src/controllers/installmentPlanController.ts +398 -0
  480. package/src/controllers/oAuthAuthorizationController.ts +83 -0
  481. package/src/core.ts +7 -0
  482. package/src/defaultConfiguration.ts +25 -0
  483. package/src/errors/failedResponseError.ts +18 -0
  484. package/src/errors/oAuthProviderError.ts +25 -0
  485. package/src/errors/planErrorResponseError.ts +21 -0
  486. package/src/index.ts +87 -0
  487. package/src/models/addressData.ts +25 -0
  488. package/src/models/addressDataModel.ts +25 -0
  489. package/src/models/authorizationModel.ts +44 -0
  490. package/src/models/bluesnapVaultedShopperToken.ts +19 -0
  491. package/src/models/cardBrandEnum.ts +29 -0
  492. package/src/models/cardData.ts +29 -0
  493. package/src/models/cardTypeEnum.ts +27 -0
  494. package/src/models/checkInstallmentsEligibilityRequest.ts +26 -0
  495. package/src/models/eligibilityTermsAndConditionResponse.ts +21 -0
  496. package/src/models/error.ts +19 -0
  497. package/src/models/errorExtended.ts +21 -0
  498. package/src/models/eventsEndpointsModel.ts +15 -0
  499. package/src/models/gatewayTokenData.ts +17 -0
  500. package/src/models/gwAuthorizationStatusEnum.ts +26 -0
  501. package/src/models/identifierContract.ts +19 -0
  502. package/src/models/initiatePlanResponse.ts +50 -0
  503. package/src/models/initiateRedirectionEndpointsModel.ts +21 -0
  504. package/src/models/installment.ts +25 -0
  505. package/src/models/installmentPlanCreateRequest.ts +69 -0
  506. package/src/models/installmentPlanCreateResponse.ts +80 -0
  507. package/src/models/installmentPlanGetResponse.ts +83 -0
  508. package/src/models/installmentPlanInitiateRequest.ts +61 -0
  509. package/src/models/installmentPlanRefundRequest.ts +25 -0
  510. package/src/models/installmentPlanRefundResponse.ts +30 -0
  511. package/src/models/installmentPlanSearchResponse.ts +24 -0
  512. package/src/models/installmentPlanUpdateRequest.ts +29 -0
  513. package/src/models/installmentPlanUpdateRequestByIdentifier.ts +43 -0
  514. package/src/models/installmentPlanUpdateResponse.ts +30 -0
  515. package/src/models/installmentStatusEnum.ts +23 -0
  516. package/src/models/installmentsEligibilityResponse.ts +26 -0
  517. package/src/models/linksData.ts +21 -0
  518. package/src/models/linksModel.ts +19 -0
  519. package/src/models/mockerShopperToken.ts +17 -0
  520. package/src/models/oAuthProviderErrorEnum.ts +26 -0
  521. package/src/models/oAuthScopeOAuth2ProductionEnum.ts +21 -0
  522. package/src/models/oAuthScopeOAuth2SandboxEnum.ts +21 -0
  523. package/src/models/oAuthToken.ts +38 -0
  524. package/src/models/paymentInfo.ts +18 -0
  525. package/src/models/paymentMethodModel.ts +47 -0
  526. package/src/models/paymentMethodTypeEnum.ts +25 -0
  527. package/src/models/paymentPlanOptionModel.ts +30 -0
  528. package/src/models/planData.ts +55 -0
  529. package/src/models/planDataModel.ts +43 -0
  530. package/src/models/planStatusEnum.ts +25 -0
  531. package/src/models/processingData.ts +20 -0
  532. package/src/models/purchaseMethodEnum.ts +23 -0
  533. package/src/models/redirectionEndpointsModel.ts +23 -0
  534. package/src/models/refundModel.ts +31 -0
  535. package/src/models/refundStatusEnum.ts +23 -0
  536. package/src/models/refundStrategyEnum.ts +24 -0
  537. package/src/models/refundSummary.ts +21 -0
  538. package/src/models/searchInstallmentPlanResponseItem.ts +83 -0
  539. package/src/models/shippingStatusEnum.ts +23 -0
  540. package/src/models/shopperData.ts +23 -0
  541. package/src/models/spreedlyToken.ts +17 -0
  542. package/src/models/testModesEnum.ts +24 -0
  543. package/src/models/threeDSData.ts +25 -0
  544. package/src/models/threeDsRedirectDataV3.ts +23 -0
  545. package/src/models/uxSettingsModel.ts +18 -0
  546. package/src/models/verifyAuthorizationResponse.ts +28 -0
  547. package/src/oAuth2ProductionManager.ts +85 -0
  548. package/src/oAuth2SandboxManager.ts +85 -0
  549. package/src/schema.ts +7 -0
  550. package/test/installmentPlanController.test.ts +68 -0
  551. package/test/testClient.ts +44 -0
  552. package/test/testHelper.ts +36 -0
@@ -0,0 +1,28 @@
1
+ /**
2
+ * splitit-web-api-v3Lib
3
+ *
4
+ * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+ */
6
+ import { OAuthToken } from './models/oAuthToken.js';
7
+ import { ClientInterface } from './clientInterface.js';
8
+ import { OAuthScopeOAuth2SandboxEnum } from './models/oAuthScopeOAuth2SandboxEnum.js';
9
+ export declare class OAuth2SandboxManager {
10
+ private _oAuthClientId;
11
+ private _oAuthClientSecret;
12
+ private _oAuthScopes?;
13
+ private _oAuthClockSkew?;
14
+ private _oAuthController;
15
+ constructor({ oAuthClientId, oAuthClientSecret, oAuthScopes, oAuthClockSkew, }: {
16
+ oAuthClientId: string;
17
+ oAuthClientSecret: string;
18
+ oAuthScopes?: OAuthScopeOAuth2SandboxEnum[];
19
+ oAuthClockSkew?: number;
20
+ }, client: ClientInterface);
21
+ updateToken(oAuthToken?: OAuthToken): Promise<OAuthToken>;
22
+ isValid(oAuthToken: OAuthToken | undefined): oAuthToken is OAuthToken;
23
+ isExpired(oAuthToken: OAuthToken): boolean;
24
+ fetchToken(additionalParams?: Record<string, unknown>): Promise<OAuthToken>;
25
+ private getClientBasicAuth;
26
+ private setExpiry;
27
+ }
28
+ //# sourceMappingURL=oAuth2SandboxManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oAuth2SandboxManager.d.ts","sourceRoot":"","sources":["../../src/oAuth2SandboxManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AAEtF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,YAAY,CAAC,CAAgC;IACrD,OAAO,CAAC,eAAe,CAAC,CAAS;IACjC,OAAO,CAAC,gBAAgB,CAA+B;gBAGrD,EACE,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,cAAc,GACf,EAAE;QACD,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,2BAA2B,EAAE,CAAC;QAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,EACD,MAAM,EAAE,eAAe;IASZ,WAAW,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAO/D,OAAO,CAAC,UAAU,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,IAAI,UAAU;IAIrE,SAAS,CAAC,UAAU,EAAE,UAAU;IAI1B,UAAU,CACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzC,OAAO,CAAC,UAAU,CAAC;IAatB,OAAO,CAAC,kBAAkB;YAMZ,SAAS;CAQxB"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * splitit-web-api-v3Lib
3
+ *
4
+ * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+ */
6
+ export * from '@apimatic/schema';
7
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,kBAAkB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,74 @@
1
+ {
2
+ "version": "1.0.5",
3
+ "license": "MIT",
4
+ "sideEffects": false,
5
+ "main": "dist/cjs/index.js",
6
+ "typings": "dist/types/index.d.ts",
7
+ "module": "dist/esm/index.js",
8
+ "files": [
9
+ "dist",
10
+ "src",
11
+ "test"
12
+ ],
13
+ "engines": {
14
+ "node": ">=14.17.0"
15
+ },
16
+ "scripts": {
17
+ "build": "rimraf dist && tsc -p tsconfig.esm.json & tsc -p tsconfig.cjs.json",
18
+ "prepare": "rimraf dist && tsc -p tsconfig.esm.json & tsc -p tsconfig.cjs.json",
19
+ "test": "jest --passWithNoTests",
20
+ "test:coverage": "jest --coverage --passWithNoTests",
21
+ "lint": "eslint **/*.ts --ignore-path .eslintignore",
22
+ "lint:fix": "eslint **/*.ts --ignore-path .eslintignore --fix"
23
+ },
24
+ "peerDependencies": {},
25
+ "prettier": {
26
+ "printWidth": 80,
27
+ "semi": true,
28
+ "singleQuote": true,
29
+ "trailingComma": "es5",
30
+ "quoteProps": "preserve"
31
+ },
32
+ "name": "splitit-payments-sdk",
33
+ "description": "Splitit's Installments API is the primary Splitit tool for establishing and maintaining installment plans. Use it to verify shopper eligibility, create plans with or without immediate authorization, get plan information, update plan status, and process refunds and cancellations.",
34
+ "author": {
35
+ "name": "Splitit Dev",
36
+ "email": "support@splitit.com"
37
+ },
38
+ "devDependencies": {
39
+ "@apimatic/test-utilities": "^0.1.1",
40
+ "@types/jest": "^29.4.0",
41
+ "@typescript-eslint/eslint-plugin": "^5.52.0",
42
+ "@typescript-eslint/parser": "^5.52.0",
43
+ "eslint": "^8.34.0",
44
+ "jest": "^29.4.3",
45
+ "rimraf": "^3.0.2",
46
+ "ts-jest": "29.2.6",
47
+ "tslib": "^2.5.0",
48
+ "typescript": "^5.2.0"
49
+ },
50
+ "dependencies": {
51
+ "@apimatic/authentication-adapters": "^0.5.13",
52
+ "@apimatic/axios-client-adapter": "^0.3.19",
53
+ "@apimatic/core": "^0.10.27",
54
+ "@apimatic/oauth-adapters": "^0.4.17",
55
+ "@apimatic/schema": "^0.7.21"
56
+ },
57
+ "repository": {
58
+ "type": "git",
59
+ "url": "https://github.com/Splitit/TypeScript-SDK.git"
60
+ },
61
+ "bugs": {
62
+ "email": "support@apimatic.io"
63
+ },
64
+ "homepage": "https://splitit.com/",
65
+ "keywords": [
66
+ "splitit",
67
+ "sdk",
68
+ "api v3",
69
+ "payments",
70
+ "installments",
71
+ "bnpl"
72
+ ],
73
+ "contributors": []
74
+ }
@@ -0,0 +1,97 @@
1
+ /**
2
+ * splitit-web-api-v3Lib
3
+ *
4
+ * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+ */
6
+
7
+ import {
8
+ compositeAuthenticationProvider,
9
+ OAuthConfiguration,
10
+ requestAuthenticationProvider,
11
+ } from './authentication.js';
12
+ import { Configuration } from './configuration.js';
13
+ import { OAuthToken } from './models/oAuthToken.js';
14
+ import { OAuth2ProductionManager } from './oAuth2ProductionManager.js';
15
+ import { OAuth2SandboxManager } from './oAuth2SandboxManager.js';
16
+
17
+ export function createAuthProviderFromConfig(
18
+ config: Partial<Configuration>,
19
+ oAuth2Sandbox: () => OAuth2SandboxManager | undefined,
20
+ oAuth2Production: () => OAuth2ProductionManager | undefined
21
+ ) {
22
+ const authConfig = {
23
+ oAuth2Sandbox:
24
+ config.oAuth2SandboxCredentials &&
25
+ requestAuthenticationProvider(
26
+ config.oAuth2SandboxCredentials.oAuthToken,
27
+ oAuth2SandboxTokenProvider(
28
+ oAuth2Sandbox,
29
+ config.oAuth2SandboxCredentials.oAuthTokenProvider
30
+ ),
31
+ config.oAuth2SandboxCredentials.oAuthOnTokenUpdate,
32
+ {
33
+ clockSkew: config.oAuth2SandboxCredentials.oAuthClockSkew,
34
+ } as OAuthConfiguration
35
+ ),
36
+ oAuth2Production:
37
+ config.oAuth2ProductionCredentials &&
38
+ requestAuthenticationProvider(
39
+ config.oAuth2ProductionCredentials.oAuthToken,
40
+ oAuth2ProductionTokenProvider(
41
+ oAuth2Production,
42
+ config.oAuth2ProductionCredentials.oAuthTokenProvider
43
+ ),
44
+ config.oAuth2ProductionCredentials.oAuthOnTokenUpdate,
45
+ {
46
+ clockSkew: config.oAuth2ProductionCredentials.oAuthClockSkew,
47
+ } as OAuthConfiguration
48
+ ),
49
+ };
50
+
51
+ return compositeAuthenticationProvider<
52
+ keyof typeof authConfig,
53
+ typeof authConfig
54
+ >(authConfig);
55
+ }
56
+
57
+ function oAuth2SandboxTokenProvider(
58
+ oAuth2Sandbox: () => OAuth2SandboxManager | undefined,
59
+ defaultProvider:
60
+ | ((
61
+ lastOAuthToken: OAuthToken | undefined,
62
+ authManager: OAuth2SandboxManager
63
+ ) => Promise<OAuthToken>)
64
+ | undefined
65
+ ): ((token: OAuthToken | undefined) => Promise<OAuthToken>) | undefined {
66
+ return (token: OAuthToken | undefined) => {
67
+ const manager = oAuth2Sandbox();
68
+ if (manager === undefined) {
69
+ throw Error('Unable to find the OAuthManager instance');
70
+ }
71
+ if (defaultProvider === undefined) {
72
+ return manager.updateToken(token);
73
+ }
74
+ return defaultProvider(token, manager);
75
+ };
76
+ }
77
+
78
+ function oAuth2ProductionTokenProvider(
79
+ oAuth2Production: () => OAuth2ProductionManager | undefined,
80
+ defaultProvider:
81
+ | ((
82
+ lastOAuthToken: OAuthToken | undefined,
83
+ authManager: OAuth2ProductionManager
84
+ ) => Promise<OAuthToken>)
85
+ | undefined
86
+ ): ((token: OAuthToken | undefined) => Promise<OAuthToken>) | undefined {
87
+ return (token: OAuthToken | undefined) => {
88
+ const manager = oAuth2Production();
89
+ if (manager === undefined) {
90
+ throw Error('Unable to find the OAuthManager instance');
91
+ }
92
+ if (defaultProvider === undefined) {
93
+ return manager.updateToken(token);
94
+ }
95
+ return defaultProvider(token, manager);
96
+ };
97
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * splitit-web-api-v3Lib
3
+ *
4
+ * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+ */
6
+
7
+ export * from '@apimatic/oauth-adapters';
8
+ export * from '@apimatic/authentication-adapters';
package/src/client.ts ADDED
@@ -0,0 +1,169 @@
1
+ /**
2
+ * splitit-web-api-v3Lib
3
+ *
4
+ * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+ */
6
+
7
+ import { createAuthProviderFromConfig } from './authProvider.js';
8
+ import { OAuth2ProductionManager } from './oAuth2ProductionManager.js';
9
+ import { OAuth2SandboxManager } from './oAuth2SandboxManager.js';
10
+ import {
11
+ AuthParams,
12
+ ClientInterface,
13
+ SdkRequestBuilder,
14
+ SdkRequestBuilderFactory,
15
+ Server,
16
+ } from './clientInterface.js';
17
+ import { Configuration, Environment } from './configuration.js';
18
+ import {
19
+ DEFAULT_CONFIGURATION,
20
+ DEFAULT_RETRY_CONFIG,
21
+ } from './defaultConfiguration.js';
22
+ import { ApiError } from './core.js';
23
+ import {
24
+ AbortError,
25
+ AuthenticatorInterface,
26
+ createRequestBuilderFactory,
27
+ HttpClientInterface,
28
+ RetryConfiguration,
29
+ } from './core.js';
30
+ import { HttpClient } from './clientAdapter.js';
31
+
32
+ const USER_AGENT = 'APIMATIC 3.0';
33
+
34
+ export class Client implements ClientInterface {
35
+ private _config: Readonly<Configuration>;
36
+ private _timeout: number;
37
+ private _retryConfig: RetryConfiguration;
38
+ private _requestBuilderFactory: SdkRequestBuilderFactory;
39
+ public oAuth2SandboxManager?: OAuth2SandboxManager;
40
+ public oAuth2ProductionManager?: OAuth2ProductionManager;
41
+
42
+ constructor(config?: Partial<Configuration>) {
43
+ this._config = {
44
+ ...DEFAULT_CONFIGURATION,
45
+ ...config,
46
+ };
47
+ this._retryConfig = {
48
+ ...DEFAULT_RETRY_CONFIG,
49
+ ...this._config.httpClientOptions?.retryConfig,
50
+ };
51
+ this._timeout =
52
+ typeof this._config.httpClientOptions?.timeout != 'undefined'
53
+ ? this._config.httpClientOptions.timeout
54
+ : this._config.timeout;
55
+ this._requestBuilderFactory = createRequestHandlerFactory(
56
+ (server) => getBaseUri(server, this._config),
57
+ createAuthProviderFromConfig(
58
+ this._config,
59
+ () => this.oAuth2SandboxManager,
60
+ () => this.oAuth2ProductionManager
61
+ ),
62
+ new HttpClient(AbortError, {
63
+ timeout: this._timeout,
64
+ clientConfigOverrides: this._config.unstable_httpClientOptions,
65
+ httpAgent: this._config.httpClientOptions?.httpAgent,
66
+ httpsAgent: this._config.httpClientOptions?.httpsAgent,
67
+ proxySettings: this._config.httpClientOptions?.proxySettings,
68
+ }),
69
+ [withErrorHandlers, withUserAgent, withAuthenticationByDefault],
70
+ this._retryConfig
71
+ );
72
+ if (this._config.oAuth2SandboxCredentials) {
73
+ this.oAuth2SandboxManager = new OAuth2SandboxManager(
74
+ this._config.oAuth2SandboxCredentials,
75
+ this
76
+ );
77
+ }
78
+ if (this._config.oAuth2ProductionCredentials) {
79
+ this.oAuth2ProductionManager = new OAuth2ProductionManager(
80
+ this._config.oAuth2ProductionCredentials,
81
+ this
82
+ );
83
+ }
84
+ }
85
+
86
+ public getRequestBuilderFactory(): SdkRequestBuilderFactory {
87
+ return this._requestBuilderFactory;
88
+ }
89
+
90
+ /**
91
+ * Clone this client and override given configuration options
92
+ */
93
+ public withConfiguration(config: Partial<Configuration>) {
94
+ return new Client({ ...this._config, ...config });
95
+ }
96
+ }
97
+
98
+ function createHttpClientAdapter(client: HttpClient): HttpClientInterface {
99
+ return async (request, requestOptions) => {
100
+ return await client.executeRequest(request, requestOptions);
101
+ };
102
+ }
103
+
104
+ function getBaseUri(server: Server = 'default', config: Configuration): string {
105
+ if (config.environment === Environment.Production) {
106
+ if (server === 'default') {
107
+ return 'https://web-api-v3.sandbox.splitit.com/';
108
+ }
109
+ if (server === 'access token server') {
110
+ return 'https://id.sandbox.splitit.com/connect';
111
+ }
112
+ if (server === 'access token server1') {
113
+ return 'https://id.splitit.com/connect';
114
+ }
115
+ }
116
+ if (config.environment === Environment.Environment2) {
117
+ if (server === 'default') {
118
+ return 'https://web-api-v3.splitit.com/';
119
+ }
120
+ if (server === 'access token server') {
121
+ return 'https://id.sandbox.splitit.com/connect';
122
+ }
123
+ if (server === 'access token server1') {
124
+ return 'https://id.splitit.com/connect';
125
+ }
126
+ }
127
+ throw new Error('Could not get Base URL. Invalid environment or server.');
128
+ }
129
+
130
+ function createRequestHandlerFactory(
131
+ baseUrlProvider: (server?: Server) => string,
132
+ authProvider: AuthenticatorInterface<AuthParams>,
133
+ httpClient: HttpClient,
134
+ addons: ((rb: SdkRequestBuilder) => void)[],
135
+ retryConfig: RetryConfiguration
136
+ ): SdkRequestBuilderFactory {
137
+ const requestBuilderFactory = createRequestBuilderFactory(
138
+ createHttpClientAdapter(httpClient),
139
+ baseUrlProvider,
140
+ ApiError,
141
+ authProvider,
142
+ retryConfig
143
+ );
144
+
145
+ return tap(requestBuilderFactory, ...addons);
146
+ }
147
+
148
+ function tap(
149
+ requestBuilderFactory: SdkRequestBuilderFactory,
150
+ ...callback: ((requestBuilder: SdkRequestBuilder) => void)[]
151
+ ): SdkRequestBuilderFactory {
152
+ return (...args) => {
153
+ const requestBuilder = requestBuilderFactory(...args);
154
+ callback.forEach((c) => c(requestBuilder));
155
+ return requestBuilder;
156
+ };
157
+ }
158
+
159
+ function withErrorHandlers(rb: SdkRequestBuilder) {
160
+ rb.defaultToError(ApiError);
161
+ }
162
+
163
+ function withUserAgent(rb: SdkRequestBuilder) {
164
+ rb.header('user-agent', USER_AGENT);
165
+ }
166
+
167
+ function withAuthenticationByDefault(rb: SdkRequestBuilder) {
168
+ rb.authenticate([{ oAuth2Sandbox: true }, { oAuth2Production: true }]);
169
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * splitit-web-api-v3Lib
3
+ *
4
+ * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+ */
6
+
7
+ export * from '@apimatic/axios-client-adapter';
@@ -0,0 +1,27 @@
1
+ /**
2
+ * splitit-web-api-v3Lib
3
+ *
4
+ * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+ */
6
+
7
+ import { createAuthProviderFromConfig } from './authProvider.js';
8
+ import { AuthenticatorInterface, RequestBuilderFactory } from './core.js';
9
+
10
+ export interface ClientInterface {
11
+ getRequestBuilderFactory(): SdkRequestBuilderFactory;
12
+ }
13
+
14
+ export type SdkRequestBuilderFactory = RequestBuilderFactory<
15
+ Server,
16
+ AuthParams
17
+ >;
18
+
19
+ export type SdkRequestBuilder = ReturnType<SdkRequestBuilderFactory>;
20
+
21
+ export type Server = 'default' | 'access token server' | 'access token server1';
22
+
23
+ export type AuthParams = ReturnType<
24
+ typeof createAuthProviderFromConfig
25
+ > extends AuthenticatorInterface<infer X>
26
+ ? X
27
+ : never;
@@ -0,0 +1,50 @@
1
+ /**
2
+ * splitit-web-api-v3Lib
3
+ *
4
+ * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+ */
6
+
7
+ import { HttpClientOptions } from './clientAdapter.js';
8
+ import { OAuthScopeOAuth2ProductionEnum } from './models/oAuthScopeOAuth2ProductionEnum.js';
9
+ import { OAuthScopeOAuth2SandboxEnum } from './models/oAuthScopeOAuth2SandboxEnum.js';
10
+ import { OAuthToken } from './models/oAuthToken.js';
11
+ import { OAuth2ProductionManager } from './oAuth2ProductionManager.js';
12
+ import { OAuth2SandboxManager } from './oAuth2SandboxManager.js';
13
+
14
+ /** An interface for all configuration parameters required by the SDK. */
15
+ export interface Configuration {
16
+ timeout: number;
17
+ environment: Environment;
18
+ oAuth2SandboxCredentials?: {
19
+ oAuthClientId: string;
20
+ oAuthClientSecret: string;
21
+ oAuthToken?: OAuthToken;
22
+ oAuthScopes?: OAuthScopeOAuth2SandboxEnum[];
23
+ oAuthTokenProvider?: (
24
+ lastOAuthToken: OAuthToken | undefined,
25
+ authManager: OAuth2SandboxManager
26
+ ) => Promise<OAuthToken>;
27
+ oAuthOnTokenUpdate?: (token: OAuthToken) => void;
28
+ oAuthClockSkew?: number;
29
+ };
30
+ oAuth2ProductionCredentials?: {
31
+ oAuthClientId: string;
32
+ oAuthClientSecret: string;
33
+ oAuthToken?: OAuthToken;
34
+ oAuthScopes?: OAuthScopeOAuth2ProductionEnum[];
35
+ oAuthTokenProvider?: (
36
+ lastOAuthToken: OAuthToken | undefined,
37
+ authManager: OAuth2ProductionManager
38
+ ) => Promise<OAuthToken>;
39
+ oAuthOnTokenUpdate?: (token: OAuthToken) => void;
40
+ oAuthClockSkew?: number;
41
+ };
42
+ httpClientOptions?: Partial<HttpClientOptions>;
43
+ unstable_httpClientOptions?: any;
44
+ }
45
+
46
+ /** Environments available for API */
47
+ export enum Environment {
48
+ Production = 'production',
49
+ Environment2 = 'environment2',
50
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * splitit-web-api-v3Lib
3
+ *
4
+ * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
5
+ */
6
+
7
+ import {
8
+ ClientInterface,
9
+ SdkRequestBuilderFactory,
10
+ } from '../clientInterface.js';
11
+
12
+ /** Base class for all controllers */
13
+ export class BaseController {
14
+ /** Create a request builder */
15
+ protected createRequest: SdkRequestBuilderFactory;
16
+
17
+ constructor(client: ClientInterface) {
18
+ this.createRequest = client.getRequestBuilderFactory();
19
+ }
20
+ }