celitech-sdk 1.1.85 → 1.1.87

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 (340) hide show
  1. package/README.md +24 -18
  2. package/dist/index.d.ts +1503 -12
  3. package/dist/index.js +2152 -76
  4. package/dist/index.mjs +2114 -0
  5. package/package.json +25 -6
  6. package/.devcontainer/devcontainer.json +0 -24
  7. package/.github/workflows/publish_npmjs.yml +0 -32
  8. package/.manifest.json +0 -256
  9. package/dist/http/client.d.ts +0 -14
  10. package/dist/http/client.d.ts.map +0 -1
  11. package/dist/http/client.js +0 -36
  12. package/dist/http/client.js.map +0 -1
  13. package/dist/http/environment.d.ts +0 -4
  14. package/dist/http/environment.d.ts.map +0 -1
  15. package/dist/http/environment.js +0 -8
  16. package/dist/http/environment.js.map +0 -1
  17. package/dist/http/error.d.ts +0 -7
  18. package/dist/http/error.d.ts.map +0 -1
  19. package/dist/http/error.js +0 -12
  20. package/dist/http/error.js.map +0 -1
  21. package/dist/http/handlers/handler-chain.d.ts +0 -8
  22. package/dist/http/handlers/handler-chain.d.ts.map +0 -1
  23. package/dist/http/handlers/handler-chain.js +0 -34
  24. package/dist/http/handlers/handler-chain.js.map +0 -1
  25. package/dist/http/handlers/hook-handler.d.ts +0 -12
  26. package/dist/http/handlers/hook-handler.d.ts.map +0 -1
  27. package/dist/http/handlers/hook-handler.js +0 -49
  28. package/dist/http/handlers/hook-handler.js.map +0 -1
  29. package/dist/http/handlers/request-validation-handler.d.ts +0 -9
  30. package/dist/http/handlers/request-validation-handler.d.ts.map +0 -1
  31. package/dist/http/handlers/request-validation-handler.js +0 -78
  32. package/dist/http/handlers/request-validation-handler.js.map +0 -1
  33. package/dist/http/handlers/response-validation-handler.d.ts +0 -11
  34. package/dist/http/handlers/response-validation-handler.d.ts.map +0 -1
  35. package/dist/http/handlers/response-validation-handler.js +0 -89
  36. package/dist/http/handlers/response-validation-handler.js.map +0 -1
  37. package/dist/http/handlers/retry-handler.d.ts +0 -9
  38. package/dist/http/handlers/retry-handler.d.ts.map +0 -1
  39. package/dist/http/handlers/retry-handler.js +0 -47
  40. package/dist/http/handlers/retry-handler.js.map +0 -1
  41. package/dist/http/handlers/terminating-handler.d.ts +0 -8
  42. package/dist/http/handlers/terminating-handler.d.ts.map +0 -1
  43. package/dist/http/handlers/terminating-handler.js +0 -45
  44. package/dist/http/handlers/terminating-handler.js.map +0 -1
  45. package/dist/http/hooks/custom-hook.d.ts +0 -8
  46. package/dist/http/hooks/custom-hook.d.ts.map +0 -1
  47. package/dist/http/hooks/custom-hook.js +0 -37
  48. package/dist/http/hooks/custom-hook.js.map +0 -1
  49. package/dist/http/hooks/hook.d.ts +0 -31
  50. package/dist/http/hooks/hook.d.ts.map +0 -1
  51. package/dist/http/hooks/hook.js +0 -3
  52. package/dist/http/hooks/hook.js.map +0 -1
  53. package/dist/http/serializer.d.ts +0 -13
  54. package/dist/http/serializer.d.ts.map +0 -1
  55. package/dist/http/serializer.js +0 -150
  56. package/dist/http/serializer.js.map +0 -1
  57. package/dist/http/transport/request-builder.d.ts +0 -24
  58. package/dist/http/transport/request-builder.d.ts.map +0 -1
  59. package/dist/http/transport/request-builder.js +0 -130
  60. package/dist/http/transport/request-builder.js.map +0 -1
  61. package/dist/http/transport/request.d.ts +0 -53
  62. package/dist/http/transport/request.d.ts.map +0 -1
  63. package/dist/http/transport/request.js +0 -116
  64. package/dist/http/transport/request.js.map +0 -1
  65. package/dist/http/types.d.ts +0 -60
  66. package/dist/http/types.d.ts.map +0 -1
  67. package/dist/http/types.js +0 -16
  68. package/dist/http/types.js.map +0 -1
  69. package/dist/index.d.ts.map +0 -1
  70. package/dist/index.js.map +0 -1
  71. package/dist/services/base-service.d.ts +0 -14
  72. package/dist/services/base-service.d.ts.map +0 -1
  73. package/dist/services/base-service.js +0 -27
  74. package/dist/services/base-service.js.map +0 -1
  75. package/dist/services/destinations/destinations.d.ts +0 -11
  76. package/dist/services/destinations/destinations.d.ts.map +0 -1
  77. package/dist/services/destinations/destinations.js +0 -43
  78. package/dist/services/destinations/destinations.js.map +0 -1
  79. package/dist/services/destinations/index.d.ts +0 -3
  80. package/dist/services/destinations/index.d.ts.map +0 -1
  81. package/dist/services/destinations/index.js +0 -21
  82. package/dist/services/destinations/index.js.map +0 -1
  83. package/dist/services/destinations/models/destinations.d.ts +0 -76
  84. package/dist/services/destinations/models/destinations.d.ts.map +0 -1
  85. package/dist/services/destinations/models/destinations.js +0 -49
  86. package/dist/services/destinations/models/destinations.js.map +0 -1
  87. package/dist/services/destinations/models/index.d.ts +0 -3
  88. package/dist/services/destinations/models/index.d.ts.map +0 -1
  89. package/dist/services/destinations/models/index.js +0 -3
  90. package/dist/services/destinations/models/index.js.map +0 -1
  91. package/dist/services/destinations/models/list-destinations-ok-response.d.ts +0 -140
  92. package/dist/services/destinations/models/list-destinations-ok-response.d.ts.map +0 -1
  93. package/dist/services/destinations/models/list-destinations-ok-response.js +0 -36
  94. package/dist/services/destinations/models/list-destinations-ok-response.js.map +0 -1
  95. package/dist/services/e-sim/e-sim.d.ts +0 -34
  96. package/dist/services/e-sim/e-sim.d.ts.map +0 -1
  97. package/dist/services/e-sim/e-sim.js +0 -120
  98. package/dist/services/e-sim/e-sim.js.map +0 -1
  99. package/dist/services/e-sim/index.d.ts +0 -3
  100. package/dist/services/e-sim/index.d.ts.map +0 -1
  101. package/dist/services/e-sim/index.js +0 -21
  102. package/dist/services/e-sim/index.js.map +0 -1
  103. package/dist/services/e-sim/models/device.d.ts +0 -90
  104. package/dist/services/e-sim/models/device.d.ts.map +0 -1
  105. package/dist/services/e-sim/models/device.js +0 -54
  106. package/dist/services/e-sim/models/device.js.map +0 -1
  107. package/dist/services/e-sim/models/get-esim-device-ok-response.d.ts +0 -163
  108. package/dist/services/e-sim/models/get-esim-device-ok-response.d.ts.map +0 -1
  109. package/dist/services/e-sim/models/get-esim-device-ok-response.js +0 -36
  110. package/dist/services/e-sim/models/get-esim-device-ok-response.js.map +0 -1
  111. package/dist/services/e-sim/models/get-esim-history-ok-response-esim.d.ts +0 -154
  112. package/dist/services/e-sim/models/get-esim-history-ok-response-esim.d.ts.map +0 -1
  113. package/dist/services/e-sim/models/get-esim-history-ok-response-esim.js +0 -40
  114. package/dist/services/e-sim/models/get-esim-history-ok-response-esim.js.map +0 -1
  115. package/dist/services/e-sim/models/get-esim-history-ok-response.d.ts +0 -249
  116. package/dist/services/e-sim/models/get-esim-history-ok-response.d.ts.map +0 -1
  117. package/dist/services/e-sim/models/get-esim-history-ok-response.js +0 -36
  118. package/dist/services/e-sim/models/get-esim-history-ok-response.js.map +0 -1
  119. package/dist/services/e-sim/models/get-esim-mac-ok-response-esim.d.ts +0 -76
  120. package/dist/services/e-sim/models/get-esim-mac-ok-response-esim.d.ts.map +0 -1
  121. package/dist/services/e-sim/models/get-esim-mac-ok-response-esim.js +0 -49
  122. package/dist/services/e-sim/models/get-esim-mac-ok-response-esim.js.map +0 -1
  123. package/dist/services/e-sim/models/get-esim-mac-ok-response.d.ts +0 -140
  124. package/dist/services/e-sim/models/get-esim-mac-ok-response.d.ts.map +0 -1
  125. package/dist/services/e-sim/models/get-esim-mac-ok-response.js +0 -36
  126. package/dist/services/e-sim/models/get-esim-mac-ok-response.js.map +0 -1
  127. package/dist/services/e-sim/models/get-esim-ok-response-esim.d.ts +0 -90
  128. package/dist/services/e-sim/models/get-esim-ok-response-esim.d.ts.map +0 -1
  129. package/dist/services/e-sim/models/get-esim-ok-response-esim.js +0 -54
  130. package/dist/services/e-sim/models/get-esim-ok-response-esim.js.map +0 -1
  131. package/dist/services/e-sim/models/get-esim-ok-response.d.ts +0 -163
  132. package/dist/services/e-sim/models/get-esim-ok-response.d.ts.map +0 -1
  133. package/dist/services/e-sim/models/get-esim-ok-response.js +0 -36
  134. package/dist/services/e-sim/models/get-esim-ok-response.js.map +0 -1
  135. package/dist/services/e-sim/models/history.d.ts +0 -76
  136. package/dist/services/e-sim/models/history.d.ts.map +0 -1
  137. package/dist/services/e-sim/models/history.js +0 -45
  138. package/dist/services/e-sim/models/history.js.map +0 -1
  139. package/dist/services/e-sim/models/index.d.ts +0 -10
  140. package/dist/services/e-sim/models/index.d.ts.map +0 -1
  141. package/dist/services/e-sim/models/index.js +0 -3
  142. package/dist/services/e-sim/models/index.js.map +0 -1
  143. package/dist/services/e-sim/request-params.d.ts +0 -4
  144. package/dist/services/e-sim/request-params.d.ts.map +0 -1
  145. package/dist/services/e-sim/request-params.js +0 -3
  146. package/dist/services/e-sim/request-params.js.map +0 -1
  147. package/dist/services/packages/index.d.ts +0 -3
  148. package/dist/services/packages/index.d.ts.map +0 -1
  149. package/dist/services/packages/index.js +0 -21
  150. package/dist/services/packages/index.js.map +0 -1
  151. package/dist/services/packages/models/index.d.ts +0 -3
  152. package/dist/services/packages/models/index.d.ts.map +0 -1
  153. package/dist/services/packages/models/index.js +0 -3
  154. package/dist/services/packages/models/index.js.map +0 -1
  155. package/dist/services/packages/models/list-packages-ok-response.d.ts +0 -223
  156. package/dist/services/packages/models/list-packages-ok-response.d.ts.map +0 -1
  157. package/dist/services/packages/models/list-packages-ok-response.js +0 -42
  158. package/dist/services/packages/models/list-packages-ok-response.js.map +0 -1
  159. package/dist/services/packages/models/packages.d.ts +0 -118
  160. package/dist/services/packages/models/packages.d.ts.map +0 -1
  161. package/dist/services/packages/models/packages.js +0 -64
  162. package/dist/services/packages/models/packages.js.map +0 -1
  163. package/dist/services/packages/packages.d.ts +0 -20
  164. package/dist/services/packages/packages.d.ts.map +0 -1
  165. package/dist/services/packages/packages.js +0 -59
  166. package/dist/services/packages/packages.js.map +0 -1
  167. package/dist/services/packages/request-params.d.ts +0 -11
  168. package/dist/services/packages/request-params.d.ts.map +0 -1
  169. package/dist/services/packages/request-params.js +0 -3
  170. package/dist/services/packages/request-params.js.map +0 -1
  171. package/dist/services/purchases/index.d.ts +0 -3
  172. package/dist/services/purchases/index.d.ts.map +0 -1
  173. package/dist/services/purchases/index.js +0 -21
  174. package/dist/services/purchases/index.js.map +0 -1
  175. package/dist/services/purchases/models/create-purchase-ok-response-profile.d.ts +0 -62
  176. package/dist/services/purchases/models/create-purchase-ok-response-profile.d.ts.map +0 -1
  177. package/dist/services/purchases/models/create-purchase-ok-response-profile.js +0 -39
  178. package/dist/services/purchases/models/create-purchase-ok-response-profile.js.map +0 -1
  179. package/dist/services/purchases/models/create-purchase-ok-response-purchase.d.ts +0 -132
  180. package/dist/services/purchases/models/create-purchase-ok-response-purchase.d.ts.map +0 -1
  181. package/dist/services/purchases/models/create-purchase-ok-response-purchase.js +0 -69
  182. package/dist/services/purchases/models/create-purchase-ok-response-purchase.js.map +0 -1
  183. package/dist/services/purchases/models/create-purchase-ok-response.d.ts +0 -315
  184. package/dist/services/purchases/models/create-purchase-ok-response.d.ts.map +0 -1
  185. package/dist/services/purchases/models/create-purchase-ok-response.js +0 -46
  186. package/dist/services/purchases/models/create-purchase-ok-response.js.map +0 -1
  187. package/dist/services/purchases/models/create-purchase-request.d.ts +0 -160
  188. package/dist/services/purchases/models/create-purchase-request.d.ts.map +0 -1
  189. package/dist/services/purchases/models/create-purchase-request.js +0 -79
  190. package/dist/services/purchases/models/create-purchase-request.js.map +0 -1
  191. package/dist/services/purchases/models/edit-purchase-ok-response.d.ts +0 -104
  192. package/dist/services/purchases/models/edit-purchase-ok-response.d.ts.map +0 -1
  193. package/dist/services/purchases/models/edit-purchase-ok-response.js +0 -59
  194. package/dist/services/purchases/models/edit-purchase-ok-response.js.map +0 -1
  195. package/dist/services/purchases/models/edit-purchase-request.d.ts +0 -104
  196. package/dist/services/purchases/models/edit-purchase-request.d.ts.map +0 -1
  197. package/dist/services/purchases/models/edit-purchase-request.js +0 -59
  198. package/dist/services/purchases/models/edit-purchase-request.js.map +0 -1
  199. package/dist/services/purchases/models/get-purchase-consumption-ok-response.d.ts +0 -62
  200. package/dist/services/purchases/models/get-purchase-consumption-ok-response.d.ts.map +0 -1
  201. package/dist/services/purchases/models/get-purchase-consumption-ok-response.js +0 -41
  202. package/dist/services/purchases/models/get-purchase-consumption-ok-response.js.map +0 -1
  203. package/dist/services/purchases/models/index.d.ts +0 -16
  204. package/dist/services/purchases/models/index.d.ts.map +0 -1
  205. package/dist/services/purchases/models/index.js +0 -3
  206. package/dist/services/purchases/models/index.js.map +0 -1
  207. package/dist/services/purchases/models/list-purchases-ok-response.d.ts +0 -622
  208. package/dist/services/purchases/models/list-purchases-ok-response.d.ts.map +0 -1
  209. package/dist/services/purchases/models/list-purchases-ok-response.js +0 -42
  210. package/dist/services/purchases/models/list-purchases-ok-response.js.map +0 -1
  211. package/dist/services/purchases/models/package_.d.ts +0 -104
  212. package/dist/services/purchases/models/package_.d.ts.map +0 -1
  213. package/dist/services/purchases/models/package_.js +0 -59
  214. package/dist/services/purchases/models/package_.js.map +0 -1
  215. package/dist/services/purchases/models/purchases-esim.d.ts +0 -48
  216. package/dist/services/purchases/models/purchases-esim.d.ts.map +0 -1
  217. package/dist/services/purchases/models/purchases-esim.js +0 -35
  218. package/dist/services/purchases/models/purchases-esim.js.map +0 -1
  219. package/dist/services/purchases/models/purchases.d.ts +0 -372
  220. package/dist/services/purchases/models/purchases.d.ts.map +0 -1
  221. package/dist/services/purchases/models/purchases.js +0 -91
  222. package/dist/services/purchases/models/purchases.js.map +0 -1
  223. package/dist/services/purchases/models/top-up-esim-ok-response-profile.d.ts +0 -48
  224. package/dist/services/purchases/models/top-up-esim-ok-response-profile.d.ts.map +0 -1
  225. package/dist/services/purchases/models/top-up-esim-ok-response-profile.js +0 -35
  226. package/dist/services/purchases/models/top-up-esim-ok-response-profile.js.map +0 -1
  227. package/dist/services/purchases/models/top-up-esim-ok-response-purchase.d.ts +0 -132
  228. package/dist/services/purchases/models/top-up-esim-ok-response-purchase.d.ts.map +0 -1
  229. package/dist/services/purchases/models/top-up-esim-ok-response-purchase.js +0 -69
  230. package/dist/services/purchases/models/top-up-esim-ok-response-purchase.js.map +0 -1
  231. package/dist/services/purchases/models/top-up-esim-ok-response.d.ts +0 -292
  232. package/dist/services/purchases/models/top-up-esim-ok-response.d.ts.map +0 -1
  233. package/dist/services/purchases/models/top-up-esim-ok-response.js +0 -46
  234. package/dist/services/purchases/models/top-up-esim-ok-response.js.map +0 -1
  235. package/dist/services/purchases/models/top-up-esim-request.d.ts +0 -146
  236. package/dist/services/purchases/models/top-up-esim-request.d.ts.map +0 -1
  237. package/dist/services/purchases/models/top-up-esim-request.js +0 -74
  238. package/dist/services/purchases/models/top-up-esim-request.js.map +0 -1
  239. package/dist/services/purchases/purchases.d.ts +0 -48
  240. package/dist/services/purchases/purchases.d.ts.map +0 -1
  241. package/dist/services/purchases/purchases.js +0 -162
  242. package/dist/services/purchases/purchases.js.map +0 -1
  243. package/dist/services/purchases/request-params.d.ts +0 -11
  244. package/dist/services/purchases/request-params.d.ts.map +0 -1
  245. package/dist/services/purchases/request-params.js +0 -3
  246. package/dist/services/purchases/request-params.js.map +0 -1
  247. package/documentation/models/CreatePurchaseOkResponse.md +0 -31
  248. package/documentation/models/CreatePurchaseRequest.md +0 -15
  249. package/documentation/models/EditPurchaseOkResponse.md +0 -11
  250. package/documentation/models/EditPurchaseRequest.md +0 -11
  251. package/documentation/models/GetEsimDeviceOkResponse.md +0 -18
  252. package/documentation/models/GetEsimHistoryOkResponse.md +0 -26
  253. package/documentation/models/GetEsimMacOkResponse.md +0 -17
  254. package/documentation/models/GetEsimOkResponse.md +0 -18
  255. package/documentation/models/GetPurchaseConsumptionOkResponse.md +0 -8
  256. package/documentation/models/ListDestinationsOkResponse.md +0 -17
  257. package/documentation/models/ListPackagesOkResponse.md +0 -21
  258. package/documentation/models/ListPurchasesOkResponse.md +0 -46
  259. package/documentation/models/TopUpEsimOkResponse.md +0 -30
  260. package/documentation/models/TopUpEsimRequest.md +0 -14
  261. package/documentation/services/DestinationsService.md +0 -35
  262. package/documentation/services/ESimService.md +0 -148
  263. package/documentation/services/PackagesService.md +0 -48
  264. package/documentation/services/PurchasesService.md +0 -222
  265. package/documentation/snippets/destinations-get.md +0 -14
  266. package/documentation/snippets/esim-get.md +0 -16
  267. package/documentation/snippets/esim-{iccid}-device-get.md +0 -14
  268. package/documentation/snippets/esim-{iccid}-history-get.md +0 -14
  269. package/documentation/snippets/esim-{iccid}-mac-get.md +0 -14
  270. package/documentation/snippets/packages-get.md +0 -14
  271. package/documentation/snippets/purchases-edit-post.md +0 -23
  272. package/documentation/snippets/purchases-get.md +0 -14
  273. package/documentation/snippets/purchases-post.md +0 -27
  274. package/documentation/snippets/purchases-topup-post.md +0 -26
  275. package/documentation/snippets/purchases-{purchaseId}-consumption-get.md +0 -14
  276. package/examples/README.md +0 -27
  277. package/examples/package.json +0 -18
  278. package/examples/src/index.ts +0 -12
  279. package/examples/tsconfig.json +0 -22
  280. package/src/http/client.ts +0 -46
  281. package/src/http/environment.ts +0 -3
  282. package/src/http/error.ts +0 -12
  283. package/src/http/handlers/handler-chain.ts +0 -22
  284. package/src/http/handlers/hook-handler.ts +0 -47
  285. package/src/http/handlers/request-validation-handler.ts +0 -72
  286. package/src/http/handlers/response-validation-handler.ts +0 -106
  287. package/src/http/handlers/retry-handler.ts +0 -40
  288. package/src/http/handlers/terminating-handler.ts +0 -38
  289. package/src/http/hooks/custom-hook.ts +0 -32
  290. package/src/http/hooks/hook.ts +0 -40
  291. package/src/http/serializer.ts +0 -183
  292. package/src/http/transport/request-builder.ts +0 -145
  293. package/src/http/transport/request.ts +0 -178
  294. package/src/http/types.ts +0 -70
  295. package/src/index.ts +0 -73
  296. package/src/services/base-service.ts +0 -29
  297. package/src/services/destinations/destinations.ts +0 -28
  298. package/src/services/destinations/index.ts +0 -2
  299. package/src/services/destinations/models/destinations.ts +0 -57
  300. package/src/services/destinations/models/index.ts +0 -2
  301. package/src/services/destinations/models/list-destinations-ok-response.ts +0 -42
  302. package/src/services/e-sim/e-sim.ts +0 -103
  303. package/src/services/e-sim/index.ts +0 -2
  304. package/src/services/e-sim/models/device.ts +0 -63
  305. package/src/services/e-sim/models/get-esim-device-ok-response.ts +0 -42
  306. package/src/services/e-sim/models/get-esim-history-ok-response-esim.ts +0 -47
  307. package/src/services/e-sim/models/get-esim-history-ok-response.ts +0 -46
  308. package/src/services/e-sim/models/get-esim-mac-ok-response-esim.ts +0 -57
  309. package/src/services/e-sim/models/get-esim-mac-ok-response.ts +0 -46
  310. package/src/services/e-sim/models/get-esim-ok-response-esim.ts +0 -63
  311. package/src/services/e-sim/models/get-esim-ok-response.ts +0 -46
  312. package/src/services/e-sim/models/history.ts +0 -53
  313. package/src/services/e-sim/models/index.ts +0 -9
  314. package/src/services/e-sim/request-params.ts +0 -3
  315. package/src/services/packages/index.ts +0 -2
  316. package/src/services/packages/models/index.ts +0 -2
  317. package/src/services/packages/models/list-packages-ok-response.ts +0 -49
  318. package/src/services/packages/models/packages.ts +0 -75
  319. package/src/services/packages/packages.ts +0 -48
  320. package/src/services/packages/request-params.ts +0 -10
  321. package/src/services/purchases/index.ts +0 -2
  322. package/src/services/purchases/models/create-purchase-ok-response-profile.ts +0 -46
  323. package/src/services/purchases/models/create-purchase-ok-response-purchase.ts +0 -81
  324. package/src/services/purchases/models/create-purchase-ok-response.ts +0 -61
  325. package/src/services/purchases/models/create-purchase-request.ts +0 -93
  326. package/src/services/purchases/models/edit-purchase-ok-response.ts +0 -69
  327. package/src/services/purchases/models/edit-purchase-request.ts +0 -69
  328. package/src/services/purchases/models/get-purchase-consumption-ok-response.ts +0 -48
  329. package/src/services/purchases/models/index.ts +0 -15
  330. package/src/services/purchases/models/list-purchases-ok-response.ts +0 -49
  331. package/src/services/purchases/models/package_.ts +0 -69
  332. package/src/services/purchases/models/purchases-esim.ts +0 -41
  333. package/src/services/purchases/models/purchases.ts +0 -107
  334. package/src/services/purchases/models/top-up-esim-ok-response-profile.ts +0 -41
  335. package/src/services/purchases/models/top-up-esim-ok-response-purchase.ts +0 -81
  336. package/src/services/purchases/models/top-up-esim-ok-response.ts +0 -61
  337. package/src/services/purchases/models/top-up-esim-request.ts +0 -87
  338. package/src/services/purchases/purchases.ts +0 -159
  339. package/src/services/purchases/request-params.ts +0 -10
  340. package/tsconfig.json +0 -22
@@ -1,22 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "es6",
4
- "module": "commonjs",
5
- "esModuleInterop": true,
6
- "forceConsistentCasingInFileNames": true,
7
- "strict": true,
8
- "skipLibCheck": true,
9
- "outDir": "./dist",
10
- "rootDir": "./src",
11
- "noImplicitAny": true,
12
- "baseUrl": "./",
13
- "declaration": true,
14
- "moduleResolution": "node",
15
- "isolatedModules": true,
16
- "allowSyntheticDefaultImports": true,
17
- "declarationMap": true,
18
- "lib": ["es2017", "dom"],
19
- "sourceMap": true
20
- },
21
- "include": ["src/"]
22
- }
@@ -1,46 +0,0 @@
1
- import { SerializationStyle, serializePath, serializeQuery } from './serializer';
2
- import { HttpMethod, HttpResponse, Options, RetryOptions, SdkConfig } from './types';
3
- import { RequestHandlerChain } from './handlers/handler-chain';
4
- import { HookHandler } from './handlers/hook-handler';
5
- import { ResponseValidationHandler } from './handlers/response-validation-handler';
6
- import { RequestValidationHandler } from './handlers/request-validation-handler';
7
- import { CustomHook } from './hooks/custom-hook';
8
- import { TerminatingHandler } from './handlers/terminating-handler';
9
- import { RetryHandler } from './handlers/retry-handler';
10
- import { Request } from './transport/request';
11
-
12
- export class HttpClient {
13
- private readonly requestHandlerChain = new RequestHandlerChain();
14
-
15
- constructor(
16
- private config: SdkConfig,
17
- hook = new CustomHook(),
18
- ) {
19
- this.requestHandlerChain.addHandler(new ResponseValidationHandler());
20
- this.requestHandlerChain.addHandler(new RequestValidationHandler());
21
- this.requestHandlerChain.addHandler(new RetryHandler());
22
- this.requestHandlerChain.addHandler(new HookHandler(hook));
23
- this.requestHandlerChain.addHandler(new TerminatingHandler());
24
- }
25
-
26
- call<T>(request: Request<T>): Promise<HttpResponse<T>> {
27
- return this.requestHandlerChain.callChain(request);
28
- }
29
-
30
- buildPath(
31
- pathPattern: string,
32
- pathArguments: Record<string, unknown>,
33
- style = SerializationStyle.SIMPLE,
34
- explode = false,
35
- ): string {
36
- return serializePath(pathPattern, pathArguments, style, explode);
37
- }
38
-
39
- setBaseUrl(url: string): void {
40
- this.config.baseUrl = url;
41
- }
42
-
43
- setConfig(config: SdkConfig): void {
44
- this.config = config;
45
- }
46
- }
@@ -1,3 +0,0 @@
1
- export enum Environment {
2
- DEFAULT = 'https://api.celitech.net/v1',
3
- }
package/src/http/error.ts DELETED
@@ -1,12 +0,0 @@
1
- import { HttpMetadata } from './types';
2
-
3
- export class HttpError extends Error {
4
- public readonly error: string;
5
- public readonly metadata: HttpMetadata;
6
-
7
- constructor(metadata: HttpMetadata, error?: string) {
8
- super(error);
9
- this.error = metadata.statusText;
10
- this.metadata = metadata;
11
- }
12
- }
@@ -1,22 +0,0 @@
1
- import { Request } from '../transport/request';
2
- import { HttpResponse, RequestHandler } from '../types';
3
-
4
- export class RequestHandlerChain {
5
- private readonly handlers: RequestHandler[] = [];
6
-
7
- addHandler(handler: RequestHandler): void {
8
- if (this.handlers.length > 0) {
9
- const previousHandler = this.handlers[this.handlers.length - 1];
10
- previousHandler.next = handler;
11
- }
12
- this.handlers.push(handler);
13
- }
14
-
15
- async callChain<T>(request: Request<T>): Promise<HttpResponse<T>> {
16
- if (!this.handlers.length) {
17
- throw new Error('No handlers added to the chain');
18
- }
19
-
20
- return this.handlers[0].handle(request);
21
- }
22
- }
@@ -1,47 +0,0 @@
1
- import { Request } from '../transport/request';
2
- import { HttpResponse, RequestHandler } from '../types';
3
- import { HttpError } from '../error';
4
- import { Hook } from '../hooks/hook';
5
-
6
- export class HookHandler implements RequestHandler {
7
- next?: RequestHandler;
8
-
9
- constructor(private readonly hook: Hook) {}
10
-
11
- async handle<T>(request: Request<T>): Promise<HttpResponse<T>> {
12
- if (!this.next) {
13
- throw new Error('No next handler set in hook handler.');
14
- }
15
-
16
- const hookParams = this.getHookParams<T>(request);
17
-
18
- const nextRequest = await this.beforeRequest(request, hookParams);
19
-
20
- const response = await this.next.handle(nextRequest);
21
-
22
- if (response.metadata.status < 400) {
23
- return await this.hook.afterResponse(request.toHookRequest(), response, hookParams);
24
- }
25
-
26
- const error = await this.hook.onError(request.toHookRequest(), response, hookParams);
27
-
28
- throw new HttpError(error.metadata, error.error);
29
- }
30
-
31
- private async beforeRequest<T>(request: Request<T>, hookParams: Map<string, string>): Promise<Request<T>> {
32
- const hookRequest = request.toHookRequest();
33
-
34
- const newRequest = await this.hook.beforeRequest(hookRequest, hookParams);
35
-
36
- request.updateFromHookRequest(newRequest);
37
-
38
- return request;
39
- }
40
-
41
- getHookParams<T>(request: Request<T>): Map<string, string> {
42
- const hookParams: Map<string, string> = new Map();
43
- hookParams.set('clientId', request.config.clientId || '');
44
- hookParams.set('clientSecret', request.config.clientSecret || '');
45
- return hookParams;
46
- }
47
- }
@@ -1,72 +0,0 @@
1
- import { Request } from '../transport/request';
2
- import { ContentType, HttpResponse, RequestHandler } from '../types';
3
- import { HttpError } from '../error';
4
-
5
- export class RequestValidationHandler implements RequestHandler {
6
- next?: RequestHandler;
7
-
8
- async handle<T>(request: Request<T>): Promise<HttpResponse<T>> {
9
- if (!this.next) {
10
- throw new Error('No next handler set in ContentTypeHandler.');
11
- }
12
-
13
- if (request.requestContentType === ContentType.Json) {
14
- request.body = JSON.stringify(request.requestSchema?.parse(request.body));
15
- } else if (
16
- request.requestContentType === ContentType.Xml ||
17
- request.requestContentType === ContentType.Binary ||
18
- request.requestContentType === ContentType.Text
19
- ) {
20
- request.body = request.body;
21
- } else if (request.requestContentType === ContentType.FormUrlEncoded) {
22
- request.body = this.toFormUrlEncoded(request.body);
23
- } else if (request.requestContentType === ContentType.MultipartFormData) {
24
- request.body = this.toFormData(request.body);
25
- } else {
26
- request.body = JSON.stringify(request.requestSchema?.parse(request.body));
27
- }
28
-
29
- return await this.next.handle(request);
30
- }
31
-
32
- toFormUrlEncoded(body: BodyInit | undefined): string {
33
- if (body === undefined) {
34
- return '';
35
- }
36
-
37
- if (typeof body === 'string') {
38
- return body;
39
- }
40
-
41
- if (body instanceof URLSearchParams) {
42
- return body.toString();
43
- }
44
-
45
- if (body instanceof FormData) {
46
- const params = new URLSearchParams();
47
- body.forEach((value, key) => {
48
- params.append(key, value.toString());
49
- });
50
- return params.toString();
51
- }
52
-
53
- return '';
54
- }
55
-
56
- toFormData(body: Record<string, any>): FormData | undefined {
57
- const formData = new FormData();
58
-
59
- Object.keys(body).forEach((key: any) => {
60
- const value: any = body[key];
61
- if (Array.isArray(value)) {
62
- value.forEach((v, i) => formData.append(`${key}[${i}]`, v));
63
- } else if (value instanceof ArrayBuffer) {
64
- formData.append(key, new Blob([value]));
65
- } else {
66
- formData.append(key, value);
67
- }
68
- });
69
-
70
- return formData;
71
- }
72
- }
@@ -1,106 +0,0 @@
1
- import { Request } from '../transport/request';
2
- import { ZodUndefined } from 'zod';
3
- import { ContentType, HttpResponse, RequestHandler } from '../types';
4
- import { HttpError } from '../error';
5
-
6
- export class ResponseValidationHandler implements RequestHandler {
7
- next?: RequestHandler;
8
-
9
- async handle<T>(request: Request<T>): Promise<HttpResponse<T>> {
10
- const response = await this.next!.handle(request);
11
-
12
- if (!this.hasContent(request, response)) {
13
- return response;
14
- }
15
-
16
- if (request.responseContentType === ContentType.Json) {
17
- const decodedBody = new TextDecoder().decode(response.raw);
18
- const json = JSON.parse(decodedBody);
19
- return {
20
- ...response,
21
- data: this.validate<T>(request, json),
22
- };
23
- } else if (
24
- request.responseContentType === ContentType.Binary ||
25
- request.responseContentType === ContentType.Image
26
- ) {
27
- return {
28
- ...response,
29
- data: this.validate<T>(request, response.raw),
30
- };
31
- } else if (request.responseContentType === ContentType.Text || request.responseContentType === ContentType.Xml) {
32
- const text = new TextDecoder().decode(response.raw);
33
- return {
34
- ...response,
35
- data: this.validate<T>(request, text),
36
- };
37
- } else if (request.responseContentType === ContentType.FormUrlEncoded) {
38
- const urlEncoded = this.fromUrlEncoded(new TextDecoder().decode(response.raw));
39
- return {
40
- ...response,
41
- data: this.validate<T>(request, urlEncoded),
42
- };
43
- } else if (request.responseContentType === ContentType.MultipartFormData) {
44
- const formData = this.fromFormData(response.raw);
45
- return {
46
- ...response,
47
- data: this.validate<T>(request, formData),
48
- };
49
- } else {
50
- const decodedBody = new TextDecoder().decode(response.raw);
51
- const json = JSON.parse(decodedBody);
52
- return {
53
- ...response,
54
- data: this.validate<T>(request, json),
55
- };
56
- }
57
- }
58
-
59
- private validate<T>(request: Request<T>, data: any): T {
60
- if (request.validation?.responseValidation) {
61
- return request.responseSchema.parse(data);
62
- }
63
- return data;
64
- }
65
-
66
- private hasContent<T>(request: Request<T>, response: HttpResponse<T>): boolean {
67
- return (
68
- !!request.responseSchema && !(request.responseSchema instanceof ZodUndefined) && response.metadata.status !== 204
69
- );
70
- }
71
-
72
- private fromUrlEncoded(urlEncodedData: string): object {
73
- const pairs = urlEncodedData.split('&');
74
- const result: Record<string, string> = {};
75
-
76
- pairs.forEach((pair) => {
77
- const [key, value] = pair.split('=');
78
- if (key && value !== undefined) {
79
- result[decodeURIComponent(key)] = decodeURIComponent(value);
80
- }
81
- });
82
-
83
- return result;
84
- }
85
-
86
- private fromFormData(arrayBuffer: ArrayBuffer): Record<string, string> {
87
- const decoder = new TextDecoder();
88
- const text = decoder.decode(arrayBuffer);
89
-
90
- const boundary = text.split('\r\n')[0];
91
- const parts = text.split(boundary).slice(1, -1);
92
-
93
- const formDataObj: Record<string, string> = {};
94
-
95
- parts.forEach((part) => {
96
- const [header, value] = part.split('\r\n\r\n');
97
- const nameMatch = header.match(/name="([^"]+)"/);
98
- if (nameMatch) {
99
- const name = nameMatch[1].trim();
100
- formDataObj[name] = value?.trim() || '';
101
- }
102
- });
103
-
104
- return formDataObj;
105
- }
106
- }
@@ -1,40 +0,0 @@
1
- import { Request } from '../transport/request';
2
- import { HttpResponse, RequestHandler } from '../types';
3
- import { HttpError } from '../error';
4
-
5
- export class RetryHandler implements RequestHandler {
6
- next?: RequestHandler;
7
-
8
- async handle<T>(request: Request<T>): Promise<HttpResponse<T>> {
9
- if (!this.next) {
10
- throw new Error('No next handler set in retry handler.');
11
- }
12
-
13
- for (let attempt = 1; attempt <= request.retry.attempts; attempt++) {
14
- try {
15
- return await this.next.handle(request);
16
- } catch (error: any) {
17
- if (!this.shouldRetry(error) || attempt === request.retry.attempts) {
18
- throw error;
19
- }
20
- await this.delay(request.retry.delayMs);
21
- }
22
- }
23
-
24
- throw new Error('Error retrying request.');
25
- }
26
-
27
- private shouldRetry(error: Error): boolean {
28
- return error instanceof HttpError && (error.metadata.status >= 500 || error.metadata.status === 408);
29
- }
30
-
31
- private delay(delayMs: number | undefined): Promise<void> {
32
- if (!delayMs) {
33
- return Promise.resolve();
34
- }
35
-
36
- return new Promise((resolve, reject) => {
37
- setTimeout(() => resolve(), delayMs);
38
- });
39
- }
40
- }
@@ -1,38 +0,0 @@
1
- import { HttpError } from '../error';
2
- import { Request } from '../transport/request';
3
- import { HttpResponse, RequestHandler } from '../types';
4
-
5
- export class TerminatingHandler implements RequestHandler {
6
- async handle<T>(request: Request<T>): Promise<HttpResponse<T>> {
7
- const { url, requestInit } = request.getFetchArgs();
8
- const response = await fetch(url, requestInit);
9
-
10
- const metadata = {
11
- status: response.status,
12
- statusText: response.statusText,
13
- headers: this.getHeaders(response),
14
- };
15
-
16
- if (metadata.status >= 400) {
17
- throw new HttpError(metadata);
18
- }
19
-
20
- return {
21
- metadata,
22
- raw: await response.clone().arrayBuffer(),
23
- };
24
- }
25
-
26
- private getHeaders(response: Response): Record<string, string> {
27
- const headers: Record<string, string> = {};
28
- response.headers.forEach((value: string, key: string) => {
29
- headers[key] = value;
30
- });
31
-
32
- return headers;
33
- }
34
-
35
- private isErrorResponse(response: HttpResponse<unknown>): boolean {
36
- return response.metadata.status >= 400;
37
- }
38
- }
@@ -1,32 +0,0 @@
1
- import { HttpMetadata } from '../types';
2
- import { Hook } from './hook';
3
- import { HttpRequest, HttpResponse, HttpError } from './hook';
4
-
5
- export class CustomHook implements Hook {
6
- public async beforeRequest(request: HttpRequest, params: Map<string, string>): Promise<HttpRequest> {
7
- return request;
8
- }
9
-
10
- public async afterResponse(
11
- request: HttpRequest,
12
- response: HttpResponse<any>,
13
- params: Map<string, string>,
14
- ): Promise<HttpResponse<any>> {
15
- return response;
16
- }
17
-
18
- public async onError(
19
- request: HttpRequest,
20
- response: HttpResponse<any>,
21
- params: Map<string, string>,
22
- ): Promise<HttpError> {
23
- return new CustomHttpError('a custom error message', response.metadata);
24
- }
25
- }
26
-
27
- class CustomHttpError implements HttpError {
28
- constructor(
29
- public error: string,
30
- public metadata: HttpMetadata,
31
- ) {}
32
- }
@@ -1,40 +0,0 @@
1
- type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
2
-
3
- export interface HttpRequest {
4
- baseUrl: string;
5
- method: HttpMethod;
6
- path: string;
7
- headers: Map<string, unknown>;
8
- body?: BodyInit;
9
- abortSignal?: AbortSignal;
10
- queryParams: Map<string, unknown>;
11
- }
12
-
13
- interface HttpMetadata {
14
- status: number;
15
- statusText: string;
16
- headers: Record<string, string>;
17
- }
18
-
19
- export interface HttpResponse<T> {
20
- data?: T;
21
- metadata: HttpMetadata;
22
- raw: ArrayBuffer;
23
- }
24
-
25
- export interface HttpError {
26
- error: string;
27
- metadata: HttpMetadata;
28
- }
29
-
30
- export interface Hook {
31
- beforeRequest(request: HttpRequest, params: Map<string, string>): Promise<HttpRequest>;
32
-
33
- afterResponse(
34
- request: HttpRequest,
35
- response: HttpResponse<any>,
36
- params: Map<string, string>,
37
- ): Promise<HttpResponse<any>>;
38
-
39
- onError(request: HttpRequest, response: HttpResponse<any>, params: Map<string, string>): Promise<HttpError>;
40
- }
@@ -1,183 +0,0 @@
1
- export enum SerializationStyle {
2
- SIMPLE = 'simple',
3
- LABEL = 'label',
4
- MATRIX = 'matrix',
5
- FORM = 'form',
6
- SPACE_DELIMITED = 'space_delimited',
7
- PIPE_DELIMITED = 'pipe_delimited',
8
- DEEP_OBJECT = 'deep_object',
9
- }
10
-
11
- export function serializePath(
12
- pathPattern: string,
13
- pathArguments: Record<string, unknown>,
14
- style = SerializationStyle.SIMPLE,
15
- explode = false,
16
- ): string {
17
- return Object.entries(pathArguments).reduce((acc, [key, value]) => {
18
- const replaceValue = getPathReplaceValue(value, key, style, explode);
19
- return acc.replace(`{${key}}`, `${replaceValue}`);
20
- }, pathPattern);
21
- }
22
-
23
- export function serializeQuery(
24
- queryParams?: Record<string, unknown>,
25
- _style = SerializationStyle.FORM,
26
- explode = true,
27
- ): string {
28
- if (!queryParams || !Object.entries(queryParams).length) {
29
- return '';
30
- }
31
-
32
- // only style = form is supported for now
33
- const query = Object.entries(queryParams)
34
- .map(([key, value]) => {
35
- if (Array.isArray(value)) {
36
- if (explode) {
37
- return value.map((v) => `${key}=${encode(v)}`).join('&');
38
- } else {
39
- return `${key}=${value.map(encode).join(',')}`;
40
- }
41
- } else if (isNonNullObject(value)) {
42
- if (explode) {
43
- return Object.entries(value)
44
- .map(([k, v]) => `${k}=${encode(v)}`)
45
- .join('&');
46
- } else {
47
- return `${key}=${Object.entries(value)
48
- .map(([k, v]) => `${k},${encode(v)}`)
49
- .join(',')}`;
50
- }
51
- } else if (isPrimitive(value)) {
52
- return `${key}=${encode(value)}`;
53
- }
54
- return '';
55
- })
56
- .join('&');
57
-
58
- return `?${query}`;
59
- }
60
-
61
- export function serializeHeader(
62
- headers?: Record<string, unknown>,
63
- explode = false,
64
- ): Record<string, string> | undefined {
65
- if (!headers || !Object.entries(headers).length) {
66
- return undefined;
67
- }
68
-
69
- return Object.entries(headers).reduce((acc, [key, value]) => {
70
- if (Array.isArray(value)) {
71
- return { ...acc, [key]: value.join(',') };
72
- }
73
- if (isNonNullObject(value)) {
74
- const serializedObject = Object.entries(value)
75
- .map(([objectKey, objectValue]) => {
76
- return explode ? `${objectKey}=${objectValue}` : `${objectKey},${objectValue}`;
77
- })
78
- .join(',');
79
-
80
- return { ...acc, [key]: serializedObject };
81
- }
82
-
83
- if (isPrimitive(value)) {
84
- return { ...acc, [key]: `${value}` };
85
- }
86
- return acc;
87
- }, {});
88
- }
89
-
90
- function getPathReplaceValue<T>(value: T, key: string, style: SerializationStyle, explode: boolean): string {
91
- if (Array.isArray(value)) {
92
- return serializePathArray(value, key, style, explode);
93
- }
94
-
95
- if (isNonNullObject(value)) {
96
- return serializePathObject(value, key, style, explode);
97
- }
98
-
99
- if (style === SerializationStyle.LABEL) {
100
- return `.${encode(`${value}`)}`;
101
- }
102
-
103
- if (style === SerializationStyle.MATRIX) {
104
- return `;${encode(`${value}`)}`;
105
- }
106
-
107
- return encode(`${value}`);
108
- }
109
-
110
- function getPathPrefix(style: SerializationStyle, explode: boolean, key: string): string {
111
- if (style === SerializationStyle.LABEL) {
112
- return '.';
113
- }
114
- if (style === SerializationStyle.MATRIX) {
115
- return explode ? `;` : `;${key}=`;
116
- }
117
- return '';
118
- }
119
-
120
- function serializePathObject<T extends object>(
121
- value: T,
122
- key: string,
123
- style: SerializationStyle,
124
- explode: boolean,
125
- ): string {
126
- const delimiter = getPathDelimiter(style, explode);
127
- const serialized = Object.entries(value)
128
- .map(([k, v]) => {
129
- const joinCharacter = explode ? '=' : delimiter;
130
- const sanitized = encode(v);
131
- return `${k}${joinCharacter}${sanitized}`;
132
- })
133
- .join(delimiter);
134
-
135
- const prefix = getPathPrefix(style, explode, key);
136
-
137
- return `${prefix}${serialized}`;
138
- }
139
-
140
- function serializePathArray(
141
- array: (string | number | boolean)[],
142
- key: string,
143
- style: SerializationStyle,
144
- explode: boolean,
145
- ): string {
146
- const sanitized = array.map(encode);
147
- if (style === SerializationStyle.LABEL) {
148
- return `.${sanitized.join(explode ? '.' : ',')}`;
149
- }
150
- if (style === SerializationStyle.MATRIX) {
151
- if (explode) {
152
- return `;${sanitized.map((sanitizedValue) => `${key}=${sanitizedValue}`).join(';')}`;
153
- }
154
- return `;${key}=${sanitized.join(',')}`;
155
- }
156
-
157
- return sanitized.join(',');
158
- }
159
-
160
- function encode(value: string | number | boolean): string {
161
- return encodeURIComponent(value);
162
- }
163
-
164
- function getPathDelimiter(style: SerializationStyle, explode: boolean): string {
165
- if (!explode || style === SerializationStyle.SIMPLE) {
166
- return ',';
167
- }
168
- if (style === SerializationStyle.LABEL) {
169
- return '.';
170
- }
171
- if (style === SerializationStyle.MATRIX) {
172
- return ';';
173
- }
174
- return ',';
175
- }
176
-
177
- function isPrimitive(value: unknown): value is string | number | boolean {
178
- return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';
179
- }
180
-
181
- function isNonNullObject(value: unknown): value is object {
182
- return typeof value === 'object' && value !== null;
183
- }