@commercelayer/sdk 5.35.0 → 6.0.0-alfa.10

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 (535) hide show
  1. package/lib/cjs/api.d.ts +0 -3
  2. package/lib/cjs/api.js +0 -10
  3. package/lib/cjs/client.d.ts +6 -14
  4. package/lib/cjs/client.js +41 -75
  5. package/lib/cjs/commercelayer.d.ts +126 -125
  6. package/lib/cjs/commercelayer.js +267 -155
  7. package/lib/cjs/common.js +1 -12
  8. package/lib/cjs/config.js +0 -2
  9. package/lib/cjs/debug.js +0 -21
  10. package/lib/cjs/error.d.ts +6 -7
  11. package/lib/cjs/error.js +36 -35
  12. package/lib/cjs/fetch.d.ts +13 -0
  13. package/lib/cjs/fetch.js +67 -0
  14. package/lib/cjs/index.js +0 -2
  15. package/lib/cjs/interceptor.d.ts +22 -10
  16. package/lib/cjs/jsonapi.js +0 -2
  17. package/lib/cjs/model.d.ts +0 -3
  18. package/lib/cjs/model.js +0 -1
  19. package/lib/cjs/query.d.ts +2 -1
  20. package/lib/cjs/query.js +8 -7
  21. package/lib/cjs/resource.d.ts +2 -5
  22. package/lib/cjs/resource.js +32 -58
  23. package/lib/cjs/resources/addresses.d.ts +1 -0
  24. package/lib/cjs/resources/addresses.js +4 -1
  25. package/lib/cjs/resources/adjustments.d.ts +1 -0
  26. package/lib/cjs/resources/adjustments.js +4 -1
  27. package/lib/cjs/resources/adyen_gateways.d.ts +1 -0
  28. package/lib/cjs/resources/adyen_gateways.js +4 -1
  29. package/lib/cjs/resources/adyen_payments.d.ts +1 -0
  30. package/lib/cjs/resources/adyen_payments.js +4 -1
  31. package/lib/cjs/resources/application.d.ts +1 -0
  32. package/lib/cjs/resources/application.js +4 -1
  33. package/lib/cjs/resources/attachments.d.ts +1 -0
  34. package/lib/cjs/resources/attachments.js +4 -1
  35. package/lib/cjs/resources/authorizations.d.ts +1 -0
  36. package/lib/cjs/resources/authorizations.js +4 -1
  37. package/lib/cjs/resources/avalara_accounts.d.ts +1 -0
  38. package/lib/cjs/resources/avalara_accounts.js +4 -1
  39. package/lib/cjs/resources/axerve_gateways.d.ts +1 -0
  40. package/lib/cjs/resources/axerve_gateways.js +4 -1
  41. package/lib/cjs/resources/axerve_payments.d.ts +1 -0
  42. package/lib/cjs/resources/axerve_payments.js +4 -1
  43. package/lib/cjs/resources/billing_info_validation_rules.d.ts +1 -0
  44. package/lib/cjs/resources/billing_info_validation_rules.js +4 -1
  45. package/lib/cjs/resources/bing_geocoders.d.ts +1 -0
  46. package/lib/cjs/resources/bing_geocoders.js +4 -1
  47. package/lib/cjs/resources/braintree_gateways.d.ts +1 -0
  48. package/lib/cjs/resources/braintree_gateways.js +4 -1
  49. package/lib/cjs/resources/braintree_payments.d.ts +1 -0
  50. package/lib/cjs/resources/braintree_payments.js +4 -1
  51. package/lib/cjs/resources/bundles.d.ts +1 -0
  52. package/lib/cjs/resources/bundles.js +4 -1
  53. package/lib/cjs/resources/buy_x_pay_y_promotions.d.ts +1 -0
  54. package/lib/cjs/resources/buy_x_pay_y_promotions.js +4 -1
  55. package/lib/cjs/resources/captures.d.ts +1 -0
  56. package/lib/cjs/resources/captures.js +4 -1
  57. package/lib/cjs/resources/carrier_accounts.d.ts +1 -0
  58. package/lib/cjs/resources/carrier_accounts.js +4 -1
  59. package/lib/cjs/resources/checkout_com_gateways.d.ts +1 -0
  60. package/lib/cjs/resources/checkout_com_gateways.js +4 -1
  61. package/lib/cjs/resources/checkout_com_payments.d.ts +1 -0
  62. package/lib/cjs/resources/checkout_com_payments.js +4 -1
  63. package/lib/cjs/resources/cleanups.d.ts +1 -0
  64. package/lib/cjs/resources/cleanups.js +4 -1
  65. package/lib/cjs/resources/coupon_codes_promotion_rules.d.ts +1 -0
  66. package/lib/cjs/resources/coupon_codes_promotion_rules.js +4 -1
  67. package/lib/cjs/resources/coupon_recipients.d.ts +1 -0
  68. package/lib/cjs/resources/coupon_recipients.js +4 -1
  69. package/lib/cjs/resources/coupons.d.ts +1 -0
  70. package/lib/cjs/resources/coupons.js +4 -1
  71. package/lib/cjs/resources/custom_promotion_rules.d.ts +1 -0
  72. package/lib/cjs/resources/custom_promotion_rules.js +4 -1
  73. package/lib/cjs/resources/customer_addresses.d.ts +1 -0
  74. package/lib/cjs/resources/customer_addresses.js +4 -1
  75. package/lib/cjs/resources/customer_groups.d.ts +1 -0
  76. package/lib/cjs/resources/customer_groups.js +4 -1
  77. package/lib/cjs/resources/customer_password_resets.d.ts +1 -0
  78. package/lib/cjs/resources/customer_password_resets.js +4 -1
  79. package/lib/cjs/resources/customer_payment_sources.d.ts +1 -0
  80. package/lib/cjs/resources/customer_payment_sources.js +4 -1
  81. package/lib/cjs/resources/customer_subscriptions.d.ts +1 -0
  82. package/lib/cjs/resources/customer_subscriptions.js +4 -1
  83. package/lib/cjs/resources/customers.d.ts +1 -0
  84. package/lib/cjs/resources/customers.js +4 -1
  85. package/lib/cjs/resources/delivery_lead_times.d.ts +1 -0
  86. package/lib/cjs/resources/delivery_lead_times.js +4 -1
  87. package/lib/cjs/resources/event_callbacks.d.ts +1 -0
  88. package/lib/cjs/resources/event_callbacks.js +4 -1
  89. package/lib/cjs/resources/events.d.ts +1 -0
  90. package/lib/cjs/resources/events.js +4 -1
  91. package/lib/cjs/resources/exports.d.ts +1 -0
  92. package/lib/cjs/resources/exports.js +4 -1
  93. package/lib/cjs/resources/external_gateways.d.ts +1 -0
  94. package/lib/cjs/resources/external_gateways.js +4 -1
  95. package/lib/cjs/resources/external_payments.d.ts +1 -0
  96. package/lib/cjs/resources/external_payments.js +4 -1
  97. package/lib/cjs/resources/external_promotions.d.ts +1 -0
  98. package/lib/cjs/resources/external_promotions.js +4 -1
  99. package/lib/cjs/resources/external_tax_calculators.d.ts +1 -0
  100. package/lib/cjs/resources/external_tax_calculators.js +4 -1
  101. package/lib/cjs/resources/fixed_amount_promotions.d.ts +1 -0
  102. package/lib/cjs/resources/fixed_amount_promotions.js +4 -1
  103. package/lib/cjs/resources/fixed_price_promotions.d.ts +1 -0
  104. package/lib/cjs/resources/fixed_price_promotions.js +4 -1
  105. package/lib/cjs/resources/free_gift_promotions.d.ts +1 -0
  106. package/lib/cjs/resources/free_gift_promotions.js +4 -1
  107. package/lib/cjs/resources/free_shipping_promotions.d.ts +1 -0
  108. package/lib/cjs/resources/free_shipping_promotions.js +4 -1
  109. package/lib/cjs/resources/geocoders.d.ts +1 -0
  110. package/lib/cjs/resources/geocoders.js +4 -1
  111. package/lib/cjs/resources/gift_card_recipients.d.ts +1 -0
  112. package/lib/cjs/resources/gift_card_recipients.js +4 -1
  113. package/lib/cjs/resources/gift_cards.d.ts +1 -0
  114. package/lib/cjs/resources/gift_cards.js +4 -1
  115. package/lib/cjs/resources/google_geocoders.d.ts +1 -0
  116. package/lib/cjs/resources/google_geocoders.js +4 -1
  117. package/lib/cjs/resources/imports.d.ts +1 -0
  118. package/lib/cjs/resources/imports.js +4 -1
  119. package/lib/cjs/resources/in_stock_subscriptions.d.ts +1 -0
  120. package/lib/cjs/resources/in_stock_subscriptions.js +4 -1
  121. package/lib/cjs/resources/inventory_models.d.ts +1 -0
  122. package/lib/cjs/resources/inventory_models.js +4 -1
  123. package/lib/cjs/resources/inventory_return_locations.d.ts +1 -0
  124. package/lib/cjs/resources/inventory_return_locations.js +4 -1
  125. package/lib/cjs/resources/inventory_stock_locations.d.ts +1 -0
  126. package/lib/cjs/resources/inventory_stock_locations.js +4 -1
  127. package/lib/cjs/resources/klarna_gateways.d.ts +1 -0
  128. package/lib/cjs/resources/klarna_gateways.js +4 -1
  129. package/lib/cjs/resources/klarna_payments.d.ts +1 -0
  130. package/lib/cjs/resources/klarna_payments.js +4 -1
  131. package/lib/cjs/resources/line_item_options.d.ts +1 -0
  132. package/lib/cjs/resources/line_item_options.js +4 -1
  133. package/lib/cjs/resources/line_items.d.ts +1 -0
  134. package/lib/cjs/resources/line_items.js +4 -1
  135. package/lib/cjs/resources/manual_gateways.d.ts +1 -0
  136. package/lib/cjs/resources/manual_gateways.js +4 -1
  137. package/lib/cjs/resources/manual_tax_calculators.d.ts +1 -0
  138. package/lib/cjs/resources/manual_tax_calculators.js +4 -1
  139. package/lib/cjs/resources/markets.d.ts +1 -0
  140. package/lib/cjs/resources/markets.js +4 -1
  141. package/lib/cjs/resources/merchants.d.ts +1 -0
  142. package/lib/cjs/resources/merchants.js +4 -1
  143. package/lib/cjs/resources/order_amount_promotion_rules.d.ts +1 -0
  144. package/lib/cjs/resources/order_amount_promotion_rules.js +4 -1
  145. package/lib/cjs/resources/order_copies.d.ts +1 -0
  146. package/lib/cjs/resources/order_copies.js +4 -1
  147. package/lib/cjs/resources/order_factories.d.ts +1 -0
  148. package/lib/cjs/resources/order_factories.js +4 -1
  149. package/lib/cjs/resources/order_subscription_items.d.ts +1 -0
  150. package/lib/cjs/resources/order_subscription_items.js +4 -1
  151. package/lib/cjs/resources/order_subscriptions.d.ts +1 -0
  152. package/lib/cjs/resources/order_subscriptions.js +4 -1
  153. package/lib/cjs/resources/order_validation_rules.d.ts +1 -0
  154. package/lib/cjs/resources/order_validation_rules.js +4 -1
  155. package/lib/cjs/resources/orders.d.ts +1 -0
  156. package/lib/cjs/resources/orders.js +4 -1
  157. package/lib/cjs/resources/organization.d.ts +1 -0
  158. package/lib/cjs/resources/organization.js +4 -1
  159. package/lib/cjs/resources/packages.d.ts +1 -0
  160. package/lib/cjs/resources/packages.js +4 -1
  161. package/lib/cjs/resources/parcel_line_items.d.ts +1 -0
  162. package/lib/cjs/resources/parcel_line_items.js +4 -1
  163. package/lib/cjs/resources/parcels.d.ts +1 -0
  164. package/lib/cjs/resources/parcels.js +4 -1
  165. package/lib/cjs/resources/payment_gateways.d.ts +1 -0
  166. package/lib/cjs/resources/payment_gateways.js +4 -1
  167. package/lib/cjs/resources/payment_methods.d.ts +1 -0
  168. package/lib/cjs/resources/payment_methods.js +4 -1
  169. package/lib/cjs/resources/payment_options.d.ts +1 -0
  170. package/lib/cjs/resources/payment_options.js +4 -1
  171. package/lib/cjs/resources/paypal_gateways.d.ts +1 -0
  172. package/lib/cjs/resources/paypal_gateways.js +4 -1
  173. package/lib/cjs/resources/paypal_payments.d.ts +1 -0
  174. package/lib/cjs/resources/paypal_payments.js +4 -1
  175. package/lib/cjs/resources/percentage_discount_promotions.d.ts +1 -0
  176. package/lib/cjs/resources/percentage_discount_promotions.js +4 -1
  177. package/lib/cjs/resources/price_frequency_tiers.d.ts +1 -0
  178. package/lib/cjs/resources/price_frequency_tiers.js +4 -1
  179. package/lib/cjs/resources/price_lists.d.ts +1 -0
  180. package/lib/cjs/resources/price_lists.js +4 -1
  181. package/lib/cjs/resources/price_tiers.d.ts +1 -0
  182. package/lib/cjs/resources/price_tiers.js +4 -1
  183. package/lib/cjs/resources/price_volume_tiers.d.ts +1 -0
  184. package/lib/cjs/resources/price_volume_tiers.js +4 -1
  185. package/lib/cjs/resources/prices.d.ts +1 -0
  186. package/lib/cjs/resources/prices.js +4 -1
  187. package/lib/cjs/resources/promotion_rules.d.ts +1 -0
  188. package/lib/cjs/resources/promotion_rules.js +4 -1
  189. package/lib/cjs/resources/promotions.d.ts +1 -0
  190. package/lib/cjs/resources/promotions.js +4 -1
  191. package/lib/cjs/resources/recurring_order_copies.d.ts +1 -0
  192. package/lib/cjs/resources/recurring_order_copies.js +4 -1
  193. package/lib/cjs/resources/refunds.d.ts +1 -0
  194. package/lib/cjs/resources/refunds.js +4 -1
  195. package/lib/cjs/resources/reserved_stocks.d.ts +1 -0
  196. package/lib/cjs/resources/reserved_stocks.js +4 -1
  197. package/lib/cjs/resources/resource_errors.d.ts +1 -0
  198. package/lib/cjs/resources/resource_errors.js +4 -1
  199. package/lib/cjs/resources/return_line_items.d.ts +1 -0
  200. package/lib/cjs/resources/return_line_items.js +4 -1
  201. package/lib/cjs/resources/returns.d.ts +1 -0
  202. package/lib/cjs/resources/returns.js +4 -1
  203. package/lib/cjs/resources/satispay_gateways.d.ts +1 -0
  204. package/lib/cjs/resources/satispay_gateways.js +4 -1
  205. package/lib/cjs/resources/satispay_payments.d.ts +1 -0
  206. package/lib/cjs/resources/satispay_payments.js +4 -1
  207. package/lib/cjs/resources/shipments.d.ts +1 -0
  208. package/lib/cjs/resources/shipments.js +4 -1
  209. package/lib/cjs/resources/shipping_categories.d.ts +1 -0
  210. package/lib/cjs/resources/shipping_categories.js +4 -1
  211. package/lib/cjs/resources/shipping_method_tiers.d.ts +1 -0
  212. package/lib/cjs/resources/shipping_method_tiers.js +4 -1
  213. package/lib/cjs/resources/shipping_methods.d.ts +1 -0
  214. package/lib/cjs/resources/shipping_methods.js +4 -1
  215. package/lib/cjs/resources/shipping_weight_tiers.d.ts +1 -0
  216. package/lib/cjs/resources/shipping_weight_tiers.js +4 -1
  217. package/lib/cjs/resources/shipping_zones.d.ts +1 -0
  218. package/lib/cjs/resources/shipping_zones.js +4 -1
  219. package/lib/cjs/resources/sku_list_items.d.ts +1 -0
  220. package/lib/cjs/resources/sku_list_items.js +4 -1
  221. package/lib/cjs/resources/sku_list_promotion_rules.d.ts +1 -0
  222. package/lib/cjs/resources/sku_list_promotion_rules.js +4 -1
  223. package/lib/cjs/resources/sku_lists.d.ts +1 -0
  224. package/lib/cjs/resources/sku_lists.js +4 -1
  225. package/lib/cjs/resources/sku_options.d.ts +1 -0
  226. package/lib/cjs/resources/sku_options.js +4 -1
  227. package/lib/cjs/resources/skus.d.ts +1 -0
  228. package/lib/cjs/resources/skus.js +4 -1
  229. package/lib/cjs/resources/stock_items.d.ts +1 -0
  230. package/lib/cjs/resources/stock_items.js +4 -1
  231. package/lib/cjs/resources/stock_line_items.d.ts +1 -0
  232. package/lib/cjs/resources/stock_line_items.js +4 -1
  233. package/lib/cjs/resources/stock_locations.d.ts +1 -0
  234. package/lib/cjs/resources/stock_locations.js +4 -1
  235. package/lib/cjs/resources/stock_reservations.d.ts +1 -0
  236. package/lib/cjs/resources/stock_reservations.js +4 -1
  237. package/lib/cjs/resources/stock_transfers.d.ts +1 -0
  238. package/lib/cjs/resources/stock_transfers.js +4 -1
  239. package/lib/cjs/resources/stripe_gateways.d.ts +1 -0
  240. package/lib/cjs/resources/stripe_gateways.js +4 -1
  241. package/lib/cjs/resources/stripe_payments.d.ts +1 -0
  242. package/lib/cjs/resources/stripe_payments.js +4 -1
  243. package/lib/cjs/resources/subscription_models.d.ts +1 -0
  244. package/lib/cjs/resources/subscription_models.js +4 -1
  245. package/lib/cjs/resources/tags.d.ts +1 -0
  246. package/lib/cjs/resources/tags.js +4 -1
  247. package/lib/cjs/resources/tax_calculators.d.ts +1 -0
  248. package/lib/cjs/resources/tax_calculators.js +4 -1
  249. package/lib/cjs/resources/tax_categories.d.ts +1 -0
  250. package/lib/cjs/resources/tax_categories.js +4 -1
  251. package/lib/cjs/resources/tax_rules.d.ts +1 -0
  252. package/lib/cjs/resources/tax_rules.js +4 -1
  253. package/lib/cjs/resources/taxjar_accounts.d.ts +1 -0
  254. package/lib/cjs/resources/taxjar_accounts.js +4 -1
  255. package/lib/cjs/resources/transactions.d.ts +1 -0
  256. package/lib/cjs/resources/transactions.js +4 -1
  257. package/lib/cjs/resources/versions.d.ts +1 -0
  258. package/lib/cjs/resources/versions.js +4 -1
  259. package/lib/cjs/resources/voids.d.ts +1 -0
  260. package/lib/cjs/resources/voids.js +4 -1
  261. package/lib/cjs/resources/webhooks.d.ts +1 -0
  262. package/lib/cjs/resources/webhooks.js +4 -1
  263. package/lib/cjs/resources/wire_transfers.d.ts +1 -0
  264. package/lib/cjs/resources/wire_transfers.js +4 -1
  265. package/lib/cjs/static.js +0 -1
  266. package/lib/cjs/util.js +0 -1
  267. package/lib/esm/api.d.ts +0 -3
  268. package/lib/esm/api.js +0 -10
  269. package/lib/esm/client.d.ts +6 -14
  270. package/lib/esm/client.js +43 -90
  271. package/lib/esm/commercelayer.d.ts +126 -125
  272. package/lib/esm/commercelayer.js +270 -171
  273. package/lib/esm/common.js +1 -12
  274. package/lib/esm/config.js +0 -2
  275. package/lib/esm/debug.js +0 -21
  276. package/lib/esm/error.d.ts +6 -7
  277. package/lib/esm/error.js +44 -35
  278. package/lib/esm/fetch.d.ts +13 -0
  279. package/lib/esm/fetch.js +46 -0
  280. package/lib/esm/index.js +0 -2
  281. package/lib/esm/interceptor.d.ts +22 -10
  282. package/lib/esm/jsonapi.js +0 -2
  283. package/lib/esm/model.d.ts +0 -3
  284. package/lib/esm/model.js +0 -1
  285. package/lib/esm/query.d.ts +2 -1
  286. package/lib/esm/query.js +7 -7
  287. package/lib/esm/resource.d.ts +2 -5
  288. package/lib/esm/resource.js +40 -76
  289. package/lib/esm/resources/addresses.d.ts +1 -0
  290. package/lib/esm/resources/addresses.js +5 -2
  291. package/lib/esm/resources/adjustments.d.ts +1 -0
  292. package/lib/esm/resources/adjustments.js +5 -2
  293. package/lib/esm/resources/adyen_gateways.d.ts +1 -0
  294. package/lib/esm/resources/adyen_gateways.js +5 -2
  295. package/lib/esm/resources/adyen_payments.d.ts +1 -0
  296. package/lib/esm/resources/adyen_payments.js +5 -2
  297. package/lib/esm/resources/application.d.ts +1 -0
  298. package/lib/esm/resources/application.js +5 -2
  299. package/lib/esm/resources/attachments.d.ts +1 -0
  300. package/lib/esm/resources/attachments.js +5 -2
  301. package/lib/esm/resources/authorizations.d.ts +1 -0
  302. package/lib/esm/resources/authorizations.js +5 -2
  303. package/lib/esm/resources/avalara_accounts.d.ts +1 -0
  304. package/lib/esm/resources/avalara_accounts.js +5 -2
  305. package/lib/esm/resources/axerve_gateways.d.ts +1 -0
  306. package/lib/esm/resources/axerve_gateways.js +5 -2
  307. package/lib/esm/resources/axerve_payments.d.ts +1 -0
  308. package/lib/esm/resources/axerve_payments.js +5 -2
  309. package/lib/esm/resources/billing_info_validation_rules.d.ts +1 -0
  310. package/lib/esm/resources/billing_info_validation_rules.js +5 -2
  311. package/lib/esm/resources/bing_geocoders.d.ts +1 -0
  312. package/lib/esm/resources/bing_geocoders.js +5 -2
  313. package/lib/esm/resources/braintree_gateways.d.ts +1 -0
  314. package/lib/esm/resources/braintree_gateways.js +5 -2
  315. package/lib/esm/resources/braintree_payments.d.ts +1 -0
  316. package/lib/esm/resources/braintree_payments.js +5 -2
  317. package/lib/esm/resources/bundles.d.ts +1 -0
  318. package/lib/esm/resources/bundles.js +5 -2
  319. package/lib/esm/resources/buy_x_pay_y_promotions.d.ts +1 -0
  320. package/lib/esm/resources/buy_x_pay_y_promotions.js +5 -2
  321. package/lib/esm/resources/captures.d.ts +1 -0
  322. package/lib/esm/resources/captures.js +5 -2
  323. package/lib/esm/resources/carrier_accounts.d.ts +1 -0
  324. package/lib/esm/resources/carrier_accounts.js +5 -2
  325. package/lib/esm/resources/checkout_com_gateways.d.ts +1 -0
  326. package/lib/esm/resources/checkout_com_gateways.js +5 -2
  327. package/lib/esm/resources/checkout_com_payments.d.ts +1 -0
  328. package/lib/esm/resources/checkout_com_payments.js +5 -2
  329. package/lib/esm/resources/cleanups.d.ts +1 -0
  330. package/lib/esm/resources/cleanups.js +5 -2
  331. package/lib/esm/resources/coupon_codes_promotion_rules.d.ts +1 -0
  332. package/lib/esm/resources/coupon_codes_promotion_rules.js +5 -2
  333. package/lib/esm/resources/coupon_recipients.d.ts +1 -0
  334. package/lib/esm/resources/coupon_recipients.js +5 -2
  335. package/lib/esm/resources/coupons.d.ts +1 -0
  336. package/lib/esm/resources/coupons.js +5 -2
  337. package/lib/esm/resources/custom_promotion_rules.d.ts +1 -0
  338. package/lib/esm/resources/custom_promotion_rules.js +5 -2
  339. package/lib/esm/resources/customer_addresses.d.ts +1 -0
  340. package/lib/esm/resources/customer_addresses.js +5 -2
  341. package/lib/esm/resources/customer_groups.d.ts +1 -0
  342. package/lib/esm/resources/customer_groups.js +5 -2
  343. package/lib/esm/resources/customer_password_resets.d.ts +1 -0
  344. package/lib/esm/resources/customer_password_resets.js +5 -2
  345. package/lib/esm/resources/customer_payment_sources.d.ts +1 -0
  346. package/lib/esm/resources/customer_payment_sources.js +5 -2
  347. package/lib/esm/resources/customer_subscriptions.d.ts +1 -0
  348. package/lib/esm/resources/customer_subscriptions.js +5 -2
  349. package/lib/esm/resources/customers.d.ts +1 -0
  350. package/lib/esm/resources/customers.js +5 -2
  351. package/lib/esm/resources/delivery_lead_times.d.ts +1 -0
  352. package/lib/esm/resources/delivery_lead_times.js +5 -2
  353. package/lib/esm/resources/event_callbacks.d.ts +1 -0
  354. package/lib/esm/resources/event_callbacks.js +5 -2
  355. package/lib/esm/resources/events.d.ts +1 -0
  356. package/lib/esm/resources/events.js +5 -2
  357. package/lib/esm/resources/exports.d.ts +1 -0
  358. package/lib/esm/resources/exports.js +5 -2
  359. package/lib/esm/resources/external_gateways.d.ts +1 -0
  360. package/lib/esm/resources/external_gateways.js +5 -2
  361. package/lib/esm/resources/external_payments.d.ts +1 -0
  362. package/lib/esm/resources/external_payments.js +5 -2
  363. package/lib/esm/resources/external_promotions.d.ts +1 -0
  364. package/lib/esm/resources/external_promotions.js +5 -2
  365. package/lib/esm/resources/external_tax_calculators.d.ts +1 -0
  366. package/lib/esm/resources/external_tax_calculators.js +5 -2
  367. package/lib/esm/resources/fixed_amount_promotions.d.ts +1 -0
  368. package/lib/esm/resources/fixed_amount_promotions.js +5 -2
  369. package/lib/esm/resources/fixed_price_promotions.d.ts +1 -0
  370. package/lib/esm/resources/fixed_price_promotions.js +5 -2
  371. package/lib/esm/resources/free_gift_promotions.d.ts +1 -0
  372. package/lib/esm/resources/free_gift_promotions.js +5 -2
  373. package/lib/esm/resources/free_shipping_promotions.d.ts +1 -0
  374. package/lib/esm/resources/free_shipping_promotions.js +5 -2
  375. package/lib/esm/resources/geocoders.d.ts +1 -0
  376. package/lib/esm/resources/geocoders.js +5 -2
  377. package/lib/esm/resources/gift_card_recipients.d.ts +1 -0
  378. package/lib/esm/resources/gift_card_recipients.js +5 -2
  379. package/lib/esm/resources/gift_cards.d.ts +1 -0
  380. package/lib/esm/resources/gift_cards.js +5 -2
  381. package/lib/esm/resources/google_geocoders.d.ts +1 -0
  382. package/lib/esm/resources/google_geocoders.js +5 -2
  383. package/lib/esm/resources/imports.d.ts +1 -0
  384. package/lib/esm/resources/imports.js +5 -2
  385. package/lib/esm/resources/in_stock_subscriptions.d.ts +1 -0
  386. package/lib/esm/resources/in_stock_subscriptions.js +5 -2
  387. package/lib/esm/resources/inventory_models.d.ts +1 -0
  388. package/lib/esm/resources/inventory_models.js +5 -2
  389. package/lib/esm/resources/inventory_return_locations.d.ts +1 -0
  390. package/lib/esm/resources/inventory_return_locations.js +5 -2
  391. package/lib/esm/resources/inventory_stock_locations.d.ts +1 -0
  392. package/lib/esm/resources/inventory_stock_locations.js +5 -2
  393. package/lib/esm/resources/klarna_gateways.d.ts +1 -0
  394. package/lib/esm/resources/klarna_gateways.js +5 -2
  395. package/lib/esm/resources/klarna_payments.d.ts +1 -0
  396. package/lib/esm/resources/klarna_payments.js +5 -2
  397. package/lib/esm/resources/line_item_options.d.ts +1 -0
  398. package/lib/esm/resources/line_item_options.js +5 -2
  399. package/lib/esm/resources/line_items.d.ts +1 -0
  400. package/lib/esm/resources/line_items.js +5 -2
  401. package/lib/esm/resources/manual_gateways.d.ts +1 -0
  402. package/lib/esm/resources/manual_gateways.js +5 -2
  403. package/lib/esm/resources/manual_tax_calculators.d.ts +1 -0
  404. package/lib/esm/resources/manual_tax_calculators.js +5 -2
  405. package/lib/esm/resources/markets.d.ts +1 -0
  406. package/lib/esm/resources/markets.js +5 -2
  407. package/lib/esm/resources/merchants.d.ts +1 -0
  408. package/lib/esm/resources/merchants.js +5 -2
  409. package/lib/esm/resources/order_amount_promotion_rules.d.ts +1 -0
  410. package/lib/esm/resources/order_amount_promotion_rules.js +5 -2
  411. package/lib/esm/resources/order_copies.d.ts +1 -0
  412. package/lib/esm/resources/order_copies.js +5 -2
  413. package/lib/esm/resources/order_factories.d.ts +1 -0
  414. package/lib/esm/resources/order_factories.js +5 -2
  415. package/lib/esm/resources/order_subscription_items.d.ts +1 -0
  416. package/lib/esm/resources/order_subscription_items.js +5 -2
  417. package/lib/esm/resources/order_subscriptions.d.ts +1 -0
  418. package/lib/esm/resources/order_subscriptions.js +5 -2
  419. package/lib/esm/resources/order_validation_rules.d.ts +1 -0
  420. package/lib/esm/resources/order_validation_rules.js +5 -2
  421. package/lib/esm/resources/orders.d.ts +1 -0
  422. package/lib/esm/resources/orders.js +5 -2
  423. package/lib/esm/resources/organization.d.ts +1 -0
  424. package/lib/esm/resources/organization.js +5 -2
  425. package/lib/esm/resources/packages.d.ts +1 -0
  426. package/lib/esm/resources/packages.js +5 -2
  427. package/lib/esm/resources/parcel_line_items.d.ts +1 -0
  428. package/lib/esm/resources/parcel_line_items.js +5 -2
  429. package/lib/esm/resources/parcels.d.ts +1 -0
  430. package/lib/esm/resources/parcels.js +5 -2
  431. package/lib/esm/resources/payment_gateways.d.ts +1 -0
  432. package/lib/esm/resources/payment_gateways.js +5 -2
  433. package/lib/esm/resources/payment_methods.d.ts +1 -0
  434. package/lib/esm/resources/payment_methods.js +5 -2
  435. package/lib/esm/resources/payment_options.d.ts +1 -0
  436. package/lib/esm/resources/payment_options.js +5 -2
  437. package/lib/esm/resources/paypal_gateways.d.ts +1 -0
  438. package/lib/esm/resources/paypal_gateways.js +5 -2
  439. package/lib/esm/resources/paypal_payments.d.ts +1 -0
  440. package/lib/esm/resources/paypal_payments.js +5 -2
  441. package/lib/esm/resources/percentage_discount_promotions.d.ts +1 -0
  442. package/lib/esm/resources/percentage_discount_promotions.js +5 -2
  443. package/lib/esm/resources/price_frequency_tiers.d.ts +1 -0
  444. package/lib/esm/resources/price_frequency_tiers.js +5 -2
  445. package/lib/esm/resources/price_lists.d.ts +1 -0
  446. package/lib/esm/resources/price_lists.js +5 -2
  447. package/lib/esm/resources/price_tiers.d.ts +1 -0
  448. package/lib/esm/resources/price_tiers.js +5 -2
  449. package/lib/esm/resources/price_volume_tiers.d.ts +1 -0
  450. package/lib/esm/resources/price_volume_tiers.js +5 -2
  451. package/lib/esm/resources/prices.d.ts +1 -0
  452. package/lib/esm/resources/prices.js +5 -2
  453. package/lib/esm/resources/promotion_rules.d.ts +1 -0
  454. package/lib/esm/resources/promotion_rules.js +5 -2
  455. package/lib/esm/resources/promotions.d.ts +1 -0
  456. package/lib/esm/resources/promotions.js +5 -2
  457. package/lib/esm/resources/recurring_order_copies.d.ts +1 -0
  458. package/lib/esm/resources/recurring_order_copies.js +5 -2
  459. package/lib/esm/resources/refunds.d.ts +1 -0
  460. package/lib/esm/resources/refunds.js +5 -2
  461. package/lib/esm/resources/reserved_stocks.d.ts +1 -0
  462. package/lib/esm/resources/reserved_stocks.js +5 -2
  463. package/lib/esm/resources/resource_errors.d.ts +1 -0
  464. package/lib/esm/resources/resource_errors.js +5 -2
  465. package/lib/esm/resources/return_line_items.d.ts +1 -0
  466. package/lib/esm/resources/return_line_items.js +5 -2
  467. package/lib/esm/resources/returns.d.ts +1 -0
  468. package/lib/esm/resources/returns.js +5 -2
  469. package/lib/esm/resources/satispay_gateways.d.ts +1 -0
  470. package/lib/esm/resources/satispay_gateways.js +5 -2
  471. package/lib/esm/resources/satispay_payments.d.ts +1 -0
  472. package/lib/esm/resources/satispay_payments.js +5 -2
  473. package/lib/esm/resources/shipments.d.ts +1 -0
  474. package/lib/esm/resources/shipments.js +5 -2
  475. package/lib/esm/resources/shipping_categories.d.ts +1 -0
  476. package/lib/esm/resources/shipping_categories.js +5 -2
  477. package/lib/esm/resources/shipping_method_tiers.d.ts +1 -0
  478. package/lib/esm/resources/shipping_method_tiers.js +5 -2
  479. package/lib/esm/resources/shipping_methods.d.ts +1 -0
  480. package/lib/esm/resources/shipping_methods.js +5 -2
  481. package/lib/esm/resources/shipping_weight_tiers.d.ts +1 -0
  482. package/lib/esm/resources/shipping_weight_tiers.js +5 -2
  483. package/lib/esm/resources/shipping_zones.d.ts +1 -0
  484. package/lib/esm/resources/shipping_zones.js +5 -2
  485. package/lib/esm/resources/sku_list_items.d.ts +1 -0
  486. package/lib/esm/resources/sku_list_items.js +5 -2
  487. package/lib/esm/resources/sku_list_promotion_rules.d.ts +1 -0
  488. package/lib/esm/resources/sku_list_promotion_rules.js +5 -2
  489. package/lib/esm/resources/sku_lists.d.ts +1 -0
  490. package/lib/esm/resources/sku_lists.js +5 -2
  491. package/lib/esm/resources/sku_options.d.ts +1 -0
  492. package/lib/esm/resources/sku_options.js +5 -2
  493. package/lib/esm/resources/skus.d.ts +1 -0
  494. package/lib/esm/resources/skus.js +5 -2
  495. package/lib/esm/resources/stock_items.d.ts +1 -0
  496. package/lib/esm/resources/stock_items.js +5 -2
  497. package/lib/esm/resources/stock_line_items.d.ts +1 -0
  498. package/lib/esm/resources/stock_line_items.js +5 -2
  499. package/lib/esm/resources/stock_locations.d.ts +1 -0
  500. package/lib/esm/resources/stock_locations.js +5 -2
  501. package/lib/esm/resources/stock_reservations.d.ts +1 -0
  502. package/lib/esm/resources/stock_reservations.js +5 -2
  503. package/lib/esm/resources/stock_transfers.d.ts +1 -0
  504. package/lib/esm/resources/stock_transfers.js +5 -2
  505. package/lib/esm/resources/stripe_gateways.d.ts +1 -0
  506. package/lib/esm/resources/stripe_gateways.js +5 -2
  507. package/lib/esm/resources/stripe_payments.d.ts +1 -0
  508. package/lib/esm/resources/stripe_payments.js +5 -2
  509. package/lib/esm/resources/subscription_models.d.ts +1 -0
  510. package/lib/esm/resources/subscription_models.js +5 -2
  511. package/lib/esm/resources/tags.d.ts +1 -0
  512. package/lib/esm/resources/tags.js +5 -2
  513. package/lib/esm/resources/tax_calculators.d.ts +1 -0
  514. package/lib/esm/resources/tax_calculators.js +5 -2
  515. package/lib/esm/resources/tax_categories.d.ts +1 -0
  516. package/lib/esm/resources/tax_categories.js +5 -2
  517. package/lib/esm/resources/tax_rules.d.ts +1 -0
  518. package/lib/esm/resources/tax_rules.js +5 -2
  519. package/lib/esm/resources/taxjar_accounts.d.ts +1 -0
  520. package/lib/esm/resources/taxjar_accounts.js +5 -2
  521. package/lib/esm/resources/transactions.d.ts +1 -0
  522. package/lib/esm/resources/transactions.js +5 -2
  523. package/lib/esm/resources/versions.d.ts +1 -0
  524. package/lib/esm/resources/versions.js +5 -2
  525. package/lib/esm/resources/voids.d.ts +1 -0
  526. package/lib/esm/resources/voids.js +5 -2
  527. package/lib/esm/resources/webhooks.d.ts +1 -0
  528. package/lib/esm/resources/webhooks.js +5 -2
  529. package/lib/esm/resources/wire_transfers.d.ts +1 -0
  530. package/lib/esm/resources/wire_transfers.js +5 -2
  531. package/lib/esm/static.js +0 -1
  532. package/lib/esm/util.js +1 -27
  533. package/lib/tsconfig.esm.tsbuildinfo +1 -1
  534. package/lib/tsconfig.tsbuildinfo +1 -1
  535. package/package.json +20 -17
package/lib/cjs/debug.js CHANGED
@@ -1,37 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- /* Nope debugger */
4
3
  const debuggerFunction = (_pattern, ..._args) => {
5
- // console.log(_pattern)
6
4
  };
7
5
  let debuggerFactory = (_namespace) => debuggerFunction;
8
- /* Try loading 'debug' module */
9
6
  try {
10
7
  const debugModule = require('debug');
11
8
  if (debugModule && (typeof debugModule === 'function'))
12
9
  debuggerFactory = debugModule;
13
10
  }
14
11
  catch (error) {
15
- //
16
12
  }
17
13
  const debugPrefix = 'clsdk';
18
- /* Retrieve the name of the caller 'module' */
19
- /*
20
- const caller = (): string => {
21
-
22
- const err = new Error()
23
-
24
- Error.prepareStackTrace = (_, stack) => stack
25
- const stack = err.stack as unknown as NodeJS.CallSite[]
26
- Error.prepareStackTrace = undefined
27
-
28
- const fileName = stack[2].getFileName() || '/'
29
-
30
- return fileName.replace(/^.*[\\/]/, '').replace('.ts', '')
31
-
32
- }
33
- */
34
- /* Return a debugger for the defined namespace */
35
14
  const debug = (namespace) => {
36
15
  return debuggerFactory(`${debugPrefix}:${namespace}`);
37
16
  };
@@ -1,10 +1,10 @@
1
1
  declare enum ErrorType {
2
- CLIENT = "client",// Error instantiating the client
3
- REQUEST = "request",// Error preparing API request
4
- RESPONSE = "response",// Error response from API
5
- CANCEL = "cancel",// Forced request abort using interceptor
6
- PARSE = "parse",// Error parsing API resource
7
- GENERIC = "generic"
2
+ CLIENT = "client",
3
+ REQUEST = "request",
4
+ RESPONSE = "response",
5
+ CANCEL = "cancel",
6
+ PARSE = "parse",
7
+ TIMEOUT = "timeout"
8
8
  }
9
9
  declare class SdkError extends Error {
10
10
  static NAME: string;
@@ -12,7 +12,6 @@ declare class SdkError extends Error {
12
12
  type: ErrorType;
13
13
  code?: string;
14
14
  source?: Error;
15
- request?: any;
16
15
  constructor(error: {
17
16
  message: string;
18
17
  type?: ErrorType;
package/lib/cjs/error.js CHANGED
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.handleError = exports.ErrorType = exports.ApiError = exports.SdkError = void 0;
7
- const axios_1 = __importDefault(require("axios"));
4
+ const fetch_1 = require("./fetch");
8
5
  var ErrorType;
9
6
  (function (ErrorType) {
10
7
  ErrorType["CLIENT"] = "client";
@@ -12,7 +9,7 @@ var ErrorType;
12
9
  ErrorType["RESPONSE"] = "response";
13
10
  ErrorType["CANCEL"] = "cancel";
14
11
  ErrorType["PARSE"] = "parse";
15
- ErrorType["GENERIC"] = "generic";
12
+ ErrorType["TIMEOUT"] = "timeout";
16
13
  })(ErrorType || (exports.ErrorType = ErrorType = {}));
17
14
  class SdkError extends Error {
18
15
  static isSdkError(error) {
@@ -20,8 +17,8 @@ class SdkError extends Error {
20
17
  }
21
18
  constructor(error) {
22
19
  super(error.message);
23
- this.name = SdkError.NAME; // this.constructor.name
24
- this.type = error.type || ErrorType.GENERIC;
20
+ this.name = SdkError.NAME;
21
+ this.type = error.type || ErrorType.CLIENT;
25
22
  }
26
23
  }
27
24
  exports.SdkError = SdkError;
@@ -33,45 +30,49 @@ class ApiError extends SdkError {
33
30
  constructor(error) {
34
31
  super({ ...error, type: ErrorType.RESPONSE });
35
32
  this.errors = [];
36
- this.name = ApiError.NAME; // this.constructor.name
33
+ this.name = ApiError.NAME;
37
34
  }
38
35
  first() {
39
- var _a;
40
- return (((_a = this.errors) === null || _a === void 0 ? void 0 : _a.length) > 0) ? this.errors[0] : undefined;
36
+ return (this.errors?.length > 0) ? this.errors[0] : undefined;
41
37
  }
42
38
  }
43
39
  exports.ApiError = ApiError;
44
40
  ApiError.NAME = 'ApiError';
41
+ const isRequestError = (error) => {
42
+ return error instanceof TypeError;
43
+ };
44
+ const isCancelError = (error) => {
45
+ return (error instanceof DOMException) && (error.name === 'AbortError');
46
+ };
47
+ const isTimeoutError = (error) => {
48
+ return (error instanceof DOMException) && (error.name === 'TimeoutError');
49
+ };
45
50
  const handleError = (error) => {
46
51
  let sdkError = new SdkError({ message: error.message });
47
- if (axios_1.default.isAxiosError(error)) {
48
- if (error.response) {
49
- // The request was made and the server responded with a status code that falls out of the range of 2xx
50
- const apiError = new ApiError(sdkError);
51
- apiError.type = ErrorType.RESPONSE;
52
- apiError.status = error.response.status;
53
- apiError.statusText = error.response.statusText;
54
- apiError.code = String(apiError.status);
55
- apiError.errors = error.response.data.errors;
56
- if (!apiError.message && apiError.statusText)
57
- apiError.message = apiError.statusText;
58
- sdkError = apiError;
59
- }
60
- else if (error.request) {
61
- // The request was made but no response was received
62
- // `error.request` is an instance of XMLHttpRequest in the browser and an instance of http.ClientRequest in node.js
63
- sdkError.type = ErrorType.REQUEST;
64
- sdkError.request = error.request;
65
- }
66
- else {
67
- // Something happened in setting up the request that triggered an Error
68
- sdkError.type = ErrorType.CLIENT;
69
- }
52
+ if (fetch_1.FetchError.isFetchError(error)) {
53
+ const apiError = new ApiError(sdkError);
54
+ apiError.type = ErrorType.RESPONSE;
55
+ apiError.status = error.status;
56
+ apiError.statusText = error.statusText;
57
+ apiError.code = String(apiError.status);
58
+ apiError.errors = error.errors || [];
59
+ if (!apiError.message && apiError.statusText)
60
+ apiError.message = apiError.statusText;
61
+ sdkError = apiError;
70
62
  }
71
- else if (axios_1.default.isCancel(error))
63
+ else if (isRequestError(error)) {
64
+ sdkError.type = ErrorType.REQUEST;
65
+ }
66
+ else if (isCancelError(error)) {
72
67
  sdkError.type = ErrorType.CANCEL;
73
- else
68
+ }
69
+ else if (isTimeoutError(error)) {
70
+ sdkError.type = ErrorType.TIMEOUT;
71
+ }
72
+ else {
73
+ sdkError.type = ErrorType.CLIENT;
74
74
  sdkError.source = error;
75
+ }
75
76
  throw sdkError;
76
77
  };
77
78
  exports.handleError = handleError;
@@ -0,0 +1,13 @@
1
+ import type { DocWithData } from 'jsonapi-typescript';
2
+ import type { InterceptorManager } from './interceptor';
3
+ export type FetchResponse = DocWithData;
4
+ export type FetchOptions = RequestInit;
5
+ export declare class FetchError extends Error {
6
+ #private;
7
+ static isFetchError: (error: any) => error is FetchError;
8
+ constructor(status: number, statusText: string, body?: any);
9
+ get errors(): any[] | undefined;
10
+ get status(): number;
11
+ get statusText(): string;
12
+ }
13
+ export declare const fetchURL: (url: URL, options: FetchOptions, interceptors?: InterceptorManager) => Promise<FetchResponse>;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
8
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ var _FetchError_errors, _FetchError_status, _FetchError_statusText;
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.fetchURL = exports.FetchError = void 0;
19
+ const debug_1 = __importDefault(require("./debug"));
20
+ const debug = (0, debug_1.default)('fetch');
21
+ class FetchError extends Error {
22
+ constructor(status, statusText, body) {
23
+ super(statusText);
24
+ _FetchError_errors.set(this, void 0);
25
+ _FetchError_status.set(this, void 0);
26
+ _FetchError_statusText.set(this, void 0);
27
+ __classPrivateFieldSet(this, _FetchError_status, status, "f");
28
+ __classPrivateFieldSet(this, _FetchError_statusText, statusText, "f");
29
+ if (body)
30
+ __classPrivateFieldSet(this, _FetchError_errors, body.errors, "f");
31
+ }
32
+ get errors() { return __classPrivateFieldGet(this, _FetchError_errors, "f"); }
33
+ get status() { return __classPrivateFieldGet(this, _FetchError_status, "f"); }
34
+ get statusText() { return __classPrivateFieldGet(this, _FetchError_statusText, "f"); }
35
+ }
36
+ exports.FetchError = FetchError;
37
+ _FetchError_errors = new WeakMap(), _FetchError_status = new WeakMap(), _FetchError_statusText = new WeakMap();
38
+ FetchError.isFetchError = (error) => {
39
+ return error instanceof FetchError;
40
+ };
41
+ const fetchURL = async (url, options, interceptors) => {
42
+ debug('fetch: %s, %O', url, options || {});
43
+ if (interceptors?.request?.onSuccess)
44
+ ({ url, options } = await interceptors.request.onSuccess({ url, options }));
45
+ const request = new Request(url, options);
46
+ let response = await fetch(request);
47
+ if (response.ok) {
48
+ if (interceptors?.rawReader?.onSuccess)
49
+ await interceptors.rawReader.onSuccess(response);
50
+ if (interceptors?.response?.onSuccess)
51
+ response = await interceptors.response.onSuccess(response);
52
+ }
53
+ else {
54
+ if (interceptors?.rawReader?.onFailure)
55
+ await interceptors.rawReader.onFailure(response);
56
+ }
57
+ const responseBody = await response.json().catch(() => { });
58
+ if (!response.ok) {
59
+ let error = new FetchError(response.status, response.statusText, responseBody);
60
+ if (interceptors?.response?.onFailure)
61
+ error = await interceptors.response.onFailure(error);
62
+ if (error)
63
+ throw error;
64
+ }
65
+ return responseBody;
66
+ };
67
+ exports.fetchURL = fetchURL;
package/lib/cjs/index.js CHANGED
@@ -4,10 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.CommerceLayerStatic = exports.CommerceLayer = exports.default = void 0;
7
- // SDK
8
7
  var commercelayer_1 = require("./commercelayer");
9
8
  Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(commercelayer_1).default; } });
10
9
  Object.defineProperty(exports, "CommerceLayer", { enumerable: true, get: function () { return commercelayer_1.CommerceLayer; } });
11
- // Commerce Layer static functions
12
10
  var static_1 = require("./static");
13
11
  Object.defineProperty(exports, "CommerceLayerStatic", { enumerable: true, get: function () { return static_1.CommerceLayerStatic; } });
@@ -1,25 +1,37 @@
1
- import type { AxiosError, AxiosInterceptorManager, AxiosRequestConfig, AxiosResponse, AxiosResponseHeaders, RawAxiosResponseHeaders } from 'axios';
1
+ import type { FetchError, FetchOptions } from "./fetch";
2
+ type InterceptorEventManager<S extends (RequestInterceptor | ResponseInterceptor), F extends (ErrorInterceptor | ResponseInterceptor)> = {
3
+ onSuccess?: S;
4
+ onFailure?: F;
5
+ };
6
+ type RequestEventManager = InterceptorEventManager<RequestInterceptor, ErrorInterceptor>;
7
+ type ResponseEventManager = InterceptorEventManager<ResponseInterceptor, ErrorInterceptor>;
8
+ type ErrorEventManager = InterceptorEventManager<ResponseInterceptor, ResponseInterceptor>;
2
9
  type InterceptorManager = {
3
- request: AxiosInterceptorManager<AxiosRequestConfig>;
4
- response: AxiosInterceptorManager<any>;
10
+ request?: RequestEventManager;
11
+ response?: ResponseEventManager;
12
+ rawReader?: ErrorEventManager;
13
+ };
14
+ type RequestObj = {
15
+ url: URL;
16
+ options: FetchOptions;
5
17
  };
6
- type RequestObj = AxiosRequestConfig;
7
18
  type RequestInterceptor = (request: RequestObj) => RequestObj | Promise<RequestObj>;
8
- type ResponseObj = AxiosResponse;
19
+ type ResponseObj = Response;
9
20
  type ResponseInterceptor = (response: ResponseObj) => ResponseObj | Promise<ResponseObj>;
10
21
  type ApiHeadersList = 'x-ratelimit-limit' | 'x-ratelimit-count' | 'x-ratelimit-period' | 'x-ratelimit-interval' | 'x-ratelimit-remaining';
11
22
  type ApiHeaders = {
12
23
  [key in ApiHeadersList]: string | number | boolean;
13
24
  };
14
- type HeadersObj = (AxiosResponseHeaders | RawAxiosResponseHeaders) & ApiHeaders;
15
- type ErrorObj = AxiosError;
25
+ type HeadersObj = Record<string, string> | ApiHeaders;
26
+ type ErrorObj = FetchError;
16
27
  type ErrorInterceptor = (error: ErrorObj) => ErrorObj | Promise<ErrorObj>;
17
28
  type InterceptorType = 'request' | 'response';
18
29
  export type { InterceptorManager, RequestInterceptor, ResponseInterceptor, ErrorInterceptor, InterceptorType };
19
30
  export type { RequestObj, ResponseObj, ErrorObj, HeadersObj };
20
31
  type RawResponseReader = {
21
- id: number | undefined;
22
- rawResponse: ResponseObj | undefined;
23
- headers: HeadersObj | undefined;
32
+ id?: number;
33
+ rawResponse?: any;
34
+ headers?: HeadersObj;
35
+ ok: boolean;
24
36
  };
25
37
  export type { RawResponseReader };
@@ -8,7 +8,6 @@ const common_1 = require("./common");
8
8
  const config_1 = __importDefault(require("./config"));
9
9
  const debug_1 = __importDefault(require("./debug"));
10
10
  const debug = (0, debug_1.default)('jsonapi');
11
- // DENORMALIZATION
12
11
  const denormalize = (response) => {
13
12
  let denormalizedResponse;
14
13
  if (response.links)
@@ -60,7 +59,6 @@ const denormalizeResource = (res, included, chain = []) => {
60
59
  debug('denormalized resource: %O', resource);
61
60
  return resource;
62
61
  };
63
- // NORMALIZATION
64
62
  const normalize = (resource) => {
65
63
  debug('normalize resource: %O', resource);
66
64
  const attributes = {};
@@ -1,6 +1,3 @@
1
- /**
2
- * ©2024 Commerce Layer Inc.
3
- **/
4
1
  export type { Address, AddressCreate, AddressUpdate } from './resources/addresses';
5
2
  export type { Adjustment, AdjustmentCreate, AdjustmentUpdate } from './resources/adjustments';
6
3
  export type { AdyenGateway, AdyenGatewayCreate, AdyenGatewayUpdate } from './resources/adyen_gateways';
package/lib/cjs/model.js CHANGED
@@ -1,3 +1,2 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // ##__MODEL_TYPES_STOP__##
@@ -14,4 +14,5 @@ type QueryParams = QueryParamsRetrieve | QueryParamsList;
14
14
  export type { QueryParamsRetrieve, QueryParamsList, QueryParams, QueryFilter };
15
15
  declare const isParamsList: (params: any) => params is QueryParamsList;
16
16
  declare const generateQueryStringParams: (params: QueryParamsRetrieve | QueryParamsList | undefined, res: string | ResourceType) => Record<string, string>;
17
- export { generateQueryStringParams, isParamsList };
17
+ declare const generateSearchString: (params?: QueryParams, questionMark?: boolean) => string;
18
+ export { generateQueryStringParams, isParamsList, generateSearchString };
package/lib/cjs/query.js CHANGED
@@ -3,9 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.isParamsList = exports.generateQueryStringParams = void 0;
7
- const debug_1 = __importDefault(require("./debug"));
6
+ exports.generateSearchString = exports.isParamsList = exports.generateQueryStringParams = void 0;
8
7
  const error_1 = require("./error");
8
+ const debug_1 = __importDefault(require("./debug"));
9
9
  const debug = (0, debug_1.default)('query');
10
10
  const arrayFilters = ['_any', '_all', '_in'];
11
11
  const objectFilters = ['_jcont'];
@@ -18,10 +18,8 @@ const generateQueryStringParams = (params, res) => {
18
18
  const qp = {};
19
19
  if (!params)
20
20
  return qp;
21
- // Include
22
21
  if (params.include)
23
22
  qp.include = params.include.join(',');
24
- // Fields
25
23
  if (params.fields) {
26
24
  if (Array.isArray(params.fields))
27
25
  params.fields = { [res.type || res]: params.fields };
@@ -30,19 +28,16 @@ const generateQueryStringParams = (params, res) => {
30
28
  });
31
29
  }
32
30
  if (isParamsList(params)) {
33
- // Sort
34
31
  if (params.sort) {
35
32
  if (Array.isArray(params.sort))
36
33
  qp.sort = params.sort.join(',');
37
34
  else
38
35
  qp.sort = Object.entries(params.sort).map(([k, v]) => `${v === 'desc' ? '-' : ''}${k}`).join(',');
39
36
  }
40
- // Page
41
37
  if (params.pageNumber)
42
38
  qp['page[number]'] = String(params.pageNumber);
43
39
  if (params.pageSize)
44
40
  qp['page[size]'] = String(params.pageSize);
45
- // Filters
46
41
  if (params.filters) {
47
42
  Object.entries(params.filters).forEach(([p, v]) => {
48
43
  const filter = p.substring(p.lastIndexOf('_'));
@@ -67,3 +62,9 @@ const generateQueryStringParams = (params, res) => {
67
62
  return qp;
68
63
  };
69
64
  exports.generateQueryStringParams = generateQueryStringParams;
65
+ const generateSearchString = (params, questionMark = true) => {
66
+ if (!params || (Object.keys(params).length === 0))
67
+ return '';
68
+ return `${questionMark ? '?' : ''}${Object.entries(params).map(([key, val]) => `${key}=${String(val)}`).join('&')}`;
69
+ };
70
+ exports.generateSearchString = generateSearchString;
@@ -1,7 +1,6 @@
1
1
  import ApiClient, { type ApiClientInitConfig } from './client';
2
2
  import type { QueryParamsRetrieve, QueryParamsList, QueryFilter, QueryParams } from './query';
3
3
  import type { ResourceTypeLock } from './api';
4
- import type { InterceptorManager } from './interceptor';
5
4
  type ResourceNull = {
6
5
  id: null;
7
6
  } & ResourceType;
@@ -53,7 +52,6 @@ type ResourcesConfig = Partial<ResourcesInitConfig>;
53
52
  declare class ResourceAdapter {
54
53
  #private;
55
54
  constructor(config: ResourcesInitConfig);
56
- get interceptors(): InterceptorManager;
57
55
  private localConfig;
58
56
  config(config: ResourcesConfig): ResourceAdapter;
59
57
  get client(): Readonly<ApiClient>;
@@ -70,10 +68,9 @@ declare abstract class ApiResourceBase<R extends Resource> {
70
68
  protected readonly resources: ResourceAdapter;
71
69
  constructor(adapter: ResourceAdapter);
72
70
  abstract relationship(id: string | ResourceId | null): ResourceRel;
71
+ protected relationshipOneToOne<RR extends ResourceRel>(id: string | ResourceId | null): RR;
72
+ protected relationshipOneToMany<RR extends ResourceRel>(...ids: string[]): RR[];
73
73
  abstract type(): ResourceTypeLock;
74
- parse(resource: string, options?: {
75
- ignoreSlug?: boolean;
76
- }): R | R[];
77
74
  update(resource: ResourceUpdate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<R>;
78
75
  }
79
76
  declare abstract class ApiResource<R extends Resource> extends ApiResourceBase<R> {
@@ -20,7 +20,6 @@ const client_1 = __importDefault(require("./client"));
20
20
  const jsonapi_1 = require("./jsonapi");
21
21
  const query_1 = require("./query");
22
22
  const config_1 = __importDefault(require("./config"));
23
- const error_1 = require("./error");
24
23
  const debug_1 = __importDefault(require("./debug"));
25
24
  const debug = (0, debug_1.default)('resource');
26
25
  class ListResponse extends Array {
@@ -45,15 +44,11 @@ class ResourceAdapter {
45
44
  __classPrivateFieldSet(this, _ResourceAdapter_client, client_1.default.create(config), "f");
46
45
  this.localConfig(config);
47
46
  }
48
- get interceptors() { return __classPrivateFieldGet(this, _ResourceAdapter_client, "f").interceptors; }
49
47
  localConfig(config) {
50
- // if (typeof config.xyz !== 'undefined') this.#config.xyz = config.xyz
51
48
  }
52
49
  config(config) {
53
50
  debug('config %o', config);
54
- // ResourceAdapter config
55
51
  this.localConfig(config);
56
- // Client config
57
52
  __classPrivateFieldGet(this, _ResourceAdapter_client, "f").config(config);
58
53
  return this;
59
54
  }
@@ -63,76 +58,74 @@ class ResourceAdapter {
63
58
  async singleton(resource, params, options) {
64
59
  debug('singleton: %o, %O, %O', resource, params || {}, options || {});
65
60
  const queryParams = (0, query_1.generateQueryStringParams)(params, resource);
66
- if (options === null || options === void 0 ? void 0 : options.params)
67
- Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
68
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', `${resource.type}`, undefined, { ...options, params: queryParams });
61
+ if (options?.params)
62
+ Object.assign(queryParams, options?.params);
63
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('GET', `${resource.type}`, undefined, { ...options, params: queryParams });
69
64
  const r = (0, jsonapi_1.denormalize)(res);
70
65
  return r;
71
66
  }
72
67
  async retrieve(resource, params, options) {
73
68
  debug('retrieve: %o, %O, %O', resource, params || {}, options || {});
74
69
  const queryParams = (0, query_1.generateQueryStringParams)(params, resource);
75
- if (options === null || options === void 0 ? void 0 : options.params)
76
- Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
77
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', `${resource.type}/${resource.id}`, undefined, { ...options, params: queryParams });
70
+ if (options?.params)
71
+ Object.assign(queryParams, options?.params);
72
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('GET', `${resource.type}/${resource.id}`, undefined, { ...options, params: queryParams });
78
73
  const r = (0, jsonapi_1.denormalize)(res);
79
74
  return r;
80
75
  }
81
76
  async list(resource, params, options) {
82
- var _a, _b;
83
77
  debug('list: %o, %O, %O', resource, params || {}, options || {});
84
78
  const queryParams = (0, query_1.generateQueryStringParams)(params, resource);
85
- if (options === null || options === void 0 ? void 0 : options.params)
86
- Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
87
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', `${resource.type}`, undefined, { ...options, params: queryParams });
79
+ if (options?.params)
80
+ Object.assign(queryParams, options?.params);
81
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('GET', `${resource.type}`, undefined, { ...options, params: queryParams });
88
82
  const r = (0, jsonapi_1.denormalize)(res);
89
83
  const meta = {
90
- pageCount: Number((_a = res.meta) === null || _a === void 0 ? void 0 : _a.page_count),
91
- recordCount: Number((_b = res.meta) === null || _b === void 0 ? void 0 : _b.record_count),
92
- currentPage: (params === null || params === void 0 ? void 0 : params.pageNumber) || config_1.default.default.pageNumber,
93
- recordsPerPage: (params === null || params === void 0 ? void 0 : params.pageSize) || config_1.default.default.pageSize
84
+ pageCount: Number(res.meta?.page_count),
85
+ recordCount: Number(res.meta?.record_count),
86
+ currentPage: params?.pageNumber || config_1.default.default.pageNumber,
87
+ recordsPerPage: params?.pageSize || config_1.default.default.pageSize
94
88
  };
95
89
  return new ListResponse(meta, r);
96
90
  }
97
91
  async create(resource, params, options) {
98
92
  debug('create: %o, %O, %O', resource, params || {}, options || {});
99
93
  const queryParams = (0, query_1.generateQueryStringParams)(params, resource);
100
- if (options === null || options === void 0 ? void 0 : options.params)
101
- Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
94
+ if (options?.params)
95
+ Object.assign(queryParams, options?.params);
102
96
  const data = (0, jsonapi_1.normalize)(resource);
103
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('post', resource.type, data, { ...options, params: queryParams });
97
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('POST', resource.type, data, { ...options, params: queryParams });
104
98
  const r = (0, jsonapi_1.denormalize)(res);
105
99
  return r;
106
100
  }
107
101
  async update(resource, params, options) {
108
102
  debug('update: %o, %O, %O', resource, params || {}, options || {});
109
103
  const queryParams = (0, query_1.generateQueryStringParams)(params, resource);
110
- if (options === null || options === void 0 ? void 0 : options.params)
111
- Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
104
+ if (options?.params)
105
+ Object.assign(queryParams, options?.params);
112
106
  const data = (0, jsonapi_1.normalize)(resource);
113
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('patch', `${resource.type}/${resource.id}`, data, { ...options, params: queryParams });
107
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('PATCH', `${resource.type}/${resource.id}`, data, { ...options, params: queryParams });
114
108
  const r = (0, jsonapi_1.denormalize)(res);
115
109
  return r;
116
110
  }
117
111
  async delete(resource, options) {
118
112
  debug('delete: %o, %O', resource, options || {});
119
- await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('delete', `${resource.type}/${resource.id}`, undefined, options);
113
+ await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('DELETE', `${resource.type}/${resource.id}`, undefined, options);
120
114
  }
121
115
  async fetch(resource, path, params, options) {
122
- var _a, _b;
123
116
  debug('fetch: %o, %O, %O', path, params || {}, options || {});
124
117
  const queryParams = (0, query_1.generateQueryStringParams)(params, resource);
125
- if (options === null || options === void 0 ? void 0 : options.params)
126
- Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
127
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', path, undefined, { ...options, params: queryParams });
118
+ if (options?.params)
119
+ Object.assign(queryParams, options?.params);
120
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('GET', path, undefined, { ...options, params: queryParams });
128
121
  const r = (0, jsonapi_1.denormalize)(res);
129
122
  if (Array.isArray(r)) {
130
123
  const p = params;
131
124
  const meta = {
132
- pageCount: Number((_a = res.meta) === null || _a === void 0 ? void 0 : _a.page_count),
133
- recordCount: Number((_b = res.meta) === null || _b === void 0 ? void 0 : _b.record_count),
134
- currentPage: (p === null || p === void 0 ? void 0 : p.pageNumber) || config_1.default.default.pageNumber,
135
- recordsPerPage: (p === null || p === void 0 ? void 0 : p.pageSize) || config_1.default.default.pageSize
125
+ pageCount: Number(res.meta?.page_count),
126
+ recordCount: Number(res.meta?.record_count),
127
+ currentPage: p?.pageNumber || config_1.default.default.pageNumber,
128
+ recordsPerPage: p?.pageSize || config_1.default.default.pageSize
136
129
  };
137
130
  return new ListResponse(meta, r);
138
131
  }
@@ -146,31 +139,12 @@ class ApiResourceBase {
146
139
  debug('new resource instance: %s', this.type());
147
140
  this.resources = adapter;
148
141
  }
149
- parse(resource, options) {
150
- var _a;
151
- try {
152
- const res = JSON.parse(resource);
153
- // Resource type always checked
154
- const rtype = (_a = res.data) === null || _a === void 0 ? void 0 : _a.type;
155
- if (rtype !== this.type())
156
- throw new error_1.SdkError({ message: `Invalid resource type [${rtype}]`, type: error_1.ErrorType.PARSE });
157
- // Parse options
158
- const { ignoreSlug } = options || {};
159
- if (!ignoreSlug) {
160
- const links = res.data.links.self;
161
- if (!links || !String(links).match(`^${this.resources.client.baseUrl}/${this.type()}/*`))
162
- throw new error_1.SdkError({ message: `Resource contains invalid links [${links}]`, type: error_1.ErrorType.PARSE });
163
- }
164
- return (0, jsonapi_1.denormalize)(res);
165
- }
166
- catch (error) {
167
- if (error_1.SdkError.isSdkError(error))
168
- throw error;
169
- else
170
- throw new error_1.SdkError({ message: `Payload parse error [${error.message}]`, type: error_1.ErrorType.PARSE });
171
- }
142
+ relationshipOneToOne(id) {
143
+ return (((id === null) || (typeof id === 'string')) ? { id, type: this.type() } : { id: id.id, type: this.type() });
144
+ }
145
+ relationshipOneToMany(...ids) {
146
+ return (((ids === null) || (ids.length === 0) || (ids[0] === null)) ? [{ id: null, type: this.type() }] : ids.map(id => { return { id, type: this.type() }; }));
172
147
  }
173
- // reference, reference_origin and metadata attributes are always updatable
174
148
  async update(resource, params, options) {
175
149
  return this.resources.update({ ...resource, type: this.type() }, params, options);
176
150
  }
@@ -97,6 +97,7 @@ declare class Addresses extends ApiResource<Address> {
97
97
  versions(addressId: string | Address, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Version>>;
98
98
  isAddress(resource: any): resource is Address;
99
99
  relationship(id: string | ResourceId | null): AddressRel;
100
+ relationshipToMany(...ids: string[]): AddressRel[];
100
101
  type(): AddressType;
101
102
  }
102
103
  export default Addresses;
@@ -31,7 +31,10 @@ class Addresses extends resource_1.ApiResource {
31
31
  return resource.type && (resource.type === Addresses.TYPE);
32
32
  }
33
33
  relationship(id) {
34
- return ((id === null) || (typeof id === 'string')) ? { id, type: Addresses.TYPE } : { id: id.id, type: Addresses.TYPE };
34
+ return super.relationshipOneToOne(id);
35
+ }
36
+ relationshipToMany(...ids) {
37
+ return super.relationshipOneToMany(...ids);
35
38
  }
36
39
  type() {
37
40
  return Addresses.TYPE;
@@ -36,6 +36,7 @@ declare class Adjustments extends ApiResource<Adjustment> {
36
36
  versions(adjustmentId: string | Adjustment, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Version>>;
37
37
  isAdjustment(resource: any): resource is Adjustment;
38
38
  relationship(id: string | ResourceId | null): AdjustmentRel;
39
+ relationshipToMany(...ids: string[]): AdjustmentRel[];
39
40
  type(): AdjustmentType;
40
41
  }
41
42
  export default Adjustments;
@@ -19,7 +19,10 @@ class Adjustments extends resource_1.ApiResource {
19
19
  return resource.type && (resource.type === Adjustments.TYPE);
20
20
  }
21
21
  relationship(id) {
22
- return ((id === null) || (typeof id === 'string')) ? { id, type: Adjustments.TYPE } : { id: id.id, type: Adjustments.TYPE };
22
+ return super.relationshipOneToOne(id);
23
+ }
24
+ relationshipToMany(...ids) {
25
+ return super.relationshipOneToMany(...ids);
23
26
  }
24
27
  type() {
25
28
  return Adjustments.TYPE;