@commercelayer/sdk 4.33.0 → 4.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (519) hide show
  1. package/lib/cjs/api.d.ts +3 -22
  2. package/lib/cjs/api.js +17 -1
  3. package/lib/cjs/client.d.ts +8 -15
  4. package/lib/cjs/client.js +10 -42
  5. package/lib/cjs/commercelayer.d.ts +5 -4
  6. package/lib/cjs/commercelayer.js +4 -3
  7. package/lib/cjs/common.d.ts +0 -1
  8. package/lib/cjs/common.js +2 -11
  9. package/lib/cjs/config.d.ts +0 -1
  10. package/lib/cjs/config.js +0 -1
  11. package/lib/cjs/debug.js +4 -0
  12. package/lib/cjs/error.d.ts +0 -1
  13. package/lib/cjs/error.js +6 -2
  14. package/lib/cjs/index.d.ts +1 -1
  15. package/lib/cjs/index.js +16 -0
  16. package/lib/cjs/interceptor.d.ts +2 -6
  17. package/lib/cjs/jsonapi.js +2 -9
  18. package/lib/cjs/model.d.ts +1 -0
  19. package/lib/cjs/query.d.ts +15 -9
  20. package/lib/cjs/query.js +2 -3
  21. package/lib/cjs/resource.d.ts +19 -29
  22. package/lib/cjs/resource.js +9 -34
  23. package/lib/cjs/resources/addresses.d.ts +75 -73
  24. package/lib/cjs/resources/addresses.js +15 -3
  25. package/lib/cjs/resources/adjustments.d.ts +21 -19
  26. package/lib/cjs/resources/adjustments.js +15 -3
  27. package/lib/cjs/resources/adyen_gateways.d.ts +36 -34
  28. package/lib/cjs/resources/adyen_gateways.js +15 -3
  29. package/lib/cjs/resources/adyen_payments.d.ts +29 -27
  30. package/lib/cjs/resources/adyen_payments.js +15 -3
  31. package/lib/cjs/resources/application.d.ts +13 -14
  32. package/lib/cjs/resources/application.js +6 -1
  33. package/lib/cjs/resources/attachments.d.ts +80 -81
  34. package/lib/cjs/resources/attachments.js +11 -3
  35. package/lib/cjs/resources/authorizations.d.ts +45 -43
  36. package/lib/cjs/resources/authorizations.js +13 -1
  37. package/lib/cjs/resources/avalara_accounts.d.ts +33 -31
  38. package/lib/cjs/resources/avalara_accounts.js +15 -3
  39. package/lib/cjs/resources/axerve_gateways.d.ts +25 -22
  40. package/lib/cjs/resources/axerve_gateways.js +15 -3
  41. package/lib/cjs/resources/axerve_payments.d.ts +28 -26
  42. package/lib/cjs/resources/axerve_payments.js +15 -3
  43. package/lib/cjs/resources/billing_info_validation_rules.d.ts +18 -16
  44. package/lib/cjs/resources/billing_info_validation_rules.js +15 -3
  45. package/lib/cjs/resources/bing_geocoders.d.ts +15 -16
  46. package/lib/cjs/resources/bing_geocoders.js +11 -3
  47. package/lib/cjs/resources/braintree_gateways.d.ts +35 -33
  48. package/lib/cjs/resources/braintree_gateways.js +15 -3
  49. package/lib/cjs/resources/braintree_payments.d.ts +31 -29
  50. package/lib/cjs/resources/braintree_payments.js +15 -3
  51. package/lib/cjs/resources/bundles.d.ts +56 -54
  52. package/lib/cjs/resources/bundles.js +15 -3
  53. package/lib/cjs/resources/captures.d.ts +36 -34
  54. package/lib/cjs/resources/captures.js +13 -1
  55. package/lib/cjs/resources/carrier_accounts.d.ts +17 -15
  56. package/lib/cjs/resources/carrier_accounts.js +12 -0
  57. package/lib/cjs/resources/checkout_com_gateways.d.ts +26 -24
  58. package/lib/cjs/resources/checkout_com_gateways.js +15 -3
  59. package/lib/cjs/resources/checkout_com_payments.d.ts +40 -38
  60. package/lib/cjs/resources/checkout_com_payments.js +15 -3
  61. package/lib/cjs/resources/cleanups.d.ts +25 -23
  62. package/lib/cjs/resources/cleanups.js +14 -2
  63. package/lib/cjs/resources/coupon_codes_promotion_rules.d.ts +32 -30
  64. package/lib/cjs/resources/coupon_codes_promotion_rules.js +15 -3
  65. package/lib/cjs/resources/coupon_recipients.d.ts +27 -25
  66. package/lib/cjs/resources/coupon_recipients.js +15 -3
  67. package/lib/cjs/resources/coupons.d.ts +40 -38
  68. package/lib/cjs/resources/coupons.js +15 -3
  69. package/lib/cjs/resources/customer_addresses.d.ts +24 -22
  70. package/lib/cjs/resources/customer_addresses.js +15 -3
  71. package/lib/cjs/resources/customer_groups.d.ts +18 -16
  72. package/lib/cjs/resources/customer_groups.js +15 -3
  73. package/lib/cjs/resources/customer_password_resets.d.ts +17 -18
  74. package/lib/cjs/resources/customer_password_resets.js +11 -3
  75. package/lib/cjs/resources/customer_payment_sources.d.ts +39 -45
  76. package/lib/cjs/resources/customer_payment_sources.js +15 -3
  77. package/lib/cjs/resources/customer_subscriptions.d.ts +16 -14
  78. package/lib/cjs/resources/customer_subscriptions.js +15 -3
  79. package/lib/cjs/resources/customers.d.ts +36 -37
  80. package/lib/cjs/resources/customers.js +11 -3
  81. package/lib/cjs/resources/delivery_lead_times.d.ts +28 -26
  82. package/lib/cjs/resources/delivery_lead_times.js +15 -3
  83. package/lib/cjs/resources/event_callbacks.d.ts +14 -15
  84. package/lib/cjs/resources/event_callbacks.js +8 -0
  85. package/lib/cjs/resources/events.d.ts +12 -13
  86. package/lib/cjs/resources/events.js +8 -0
  87. package/lib/cjs/resources/exports.d.ts +26 -27
  88. package/lib/cjs/resources/exports.js +10 -2
  89. package/lib/cjs/resources/external_gateways.d.ts +33 -31
  90. package/lib/cjs/resources/external_gateways.js +15 -3
  91. package/lib/cjs/resources/external_payments.d.ts +24 -22
  92. package/lib/cjs/resources/external_payments.js +15 -3
  93. package/lib/cjs/resources/external_promotions.d.ts +70 -60
  94. package/lib/cjs/resources/external_promotions.js +19 -3
  95. package/lib/cjs/resources/external_tax_calculators.d.ts +20 -18
  96. package/lib/cjs/resources/external_tax_calculators.js +15 -3
  97. package/lib/cjs/resources/fixed_amount_promotions.d.ts +71 -61
  98. package/lib/cjs/resources/fixed_amount_promotions.js +19 -3
  99. package/lib/cjs/resources/fixed_price_promotions.d.ts +75 -65
  100. package/lib/cjs/resources/fixed_price_promotions.js +19 -3
  101. package/lib/cjs/resources/free_gift_promotions.d.ts +74 -64
  102. package/lib/cjs/resources/free_gift_promotions.js +19 -3
  103. package/lib/cjs/resources/free_shipping_promotions.d.ts +67 -57
  104. package/lib/cjs/resources/free_shipping_promotions.js +19 -3
  105. package/lib/cjs/resources/geocoders.d.ts +12 -13
  106. package/lib/cjs/resources/geocoders.js +8 -0
  107. package/lib/cjs/resources/gift_card_recipients.d.ts +27 -25
  108. package/lib/cjs/resources/gift_card_recipients.js +15 -3
  109. package/lib/cjs/resources/gift_cards.d.ts +68 -66
  110. package/lib/cjs/resources/gift_cards.js +15 -3
  111. package/lib/cjs/resources/google_geocoders.d.ts +15 -16
  112. package/lib/cjs/resources/google_geocoders.js +11 -3
  113. package/lib/cjs/resources/imports.d.ts +31 -29
  114. package/lib/cjs/resources/imports.js +10 -2
  115. package/lib/cjs/resources/in_stock_subscriptions.d.ts +37 -35
  116. package/lib/cjs/resources/in_stock_subscriptions.js +15 -3
  117. package/lib/cjs/resources/inventory_models.d.ts +27 -25
  118. package/lib/cjs/resources/inventory_models.js +15 -3
  119. package/lib/cjs/resources/inventory_return_locations.d.ts +23 -21
  120. package/lib/cjs/resources/inventory_return_locations.js +15 -3
  121. package/lib/cjs/resources/inventory_stock_locations.d.ts +26 -24
  122. package/lib/cjs/resources/inventory_stock_locations.js +15 -3
  123. package/lib/cjs/resources/klarna_gateways.d.ts +24 -22
  124. package/lib/cjs/resources/klarna_gateways.js +15 -3
  125. package/lib/cjs/resources/klarna_payments.d.ts +29 -27
  126. package/lib/cjs/resources/klarna_payments.js +15 -3
  127. package/lib/cjs/resources/line_item_options.d.ts +40 -41
  128. package/lib/cjs/resources/line_item_options.js +11 -3
  129. package/lib/cjs/resources/line_items.d.ts +93 -90
  130. package/lib/cjs/resources/line_items.js +11 -3
  131. package/lib/cjs/resources/manual_gateways.d.ts +16 -14
  132. package/lib/cjs/resources/manual_gateways.js +15 -3
  133. package/lib/cjs/resources/manual_tax_calculators.d.ts +22 -20
  134. package/lib/cjs/resources/manual_tax_calculators.js +15 -3
  135. package/lib/cjs/resources/markets.d.ts +61 -59
  136. package/lib/cjs/resources/markets.js +15 -3
  137. package/lib/cjs/resources/merchants.d.ts +20 -18
  138. package/lib/cjs/resources/merchants.js +15 -3
  139. package/lib/cjs/resources/order_amount_promotion_rules.d.ts +35 -33
  140. package/lib/cjs/resources/order_amount_promotion_rules.js +15 -3
  141. package/lib/cjs/resources/order_copies.d.ts +28 -29
  142. package/lib/cjs/resources/order_copies.js +11 -3
  143. package/lib/cjs/resources/order_factories.d.ts +20 -21
  144. package/lib/cjs/resources/order_factories.js +8 -0
  145. package/lib/cjs/resources/order_subscription_items.d.ts +41 -35
  146. package/lib/cjs/resources/order_subscription_items.js +15 -3
  147. package/lib/cjs/resources/order_subscriptions.d.ts +53 -51
  148. package/lib/cjs/resources/order_subscriptions.js +15 -3
  149. package/lib/cjs/resources/order_validation_rules.d.ts +14 -12
  150. package/lib/cjs/resources/order_validation_rules.js +12 -0
  151. package/lib/cjs/resources/orders.d.ts +238 -231
  152. package/lib/cjs/resources/orders.js +15 -3
  153. package/lib/cjs/resources/organization.d.ts +24 -25
  154. package/lib/cjs/resources/organization.js +6 -1
  155. package/lib/cjs/resources/packages.d.ts +32 -30
  156. package/lib/cjs/resources/packages.js +15 -3
  157. package/lib/cjs/resources/parcel_line_items.d.ts +24 -22
  158. package/lib/cjs/resources/parcel_line_items.js +15 -3
  159. package/lib/cjs/resources/parcels.d.ts +95 -93
  160. package/lib/cjs/resources/parcels.js +15 -3
  161. package/lib/cjs/resources/payment_gateways.d.ts +14 -12
  162. package/lib/cjs/resources/payment_gateways.js +12 -0
  163. package/lib/cjs/resources/payment_methods.d.ts +50 -48
  164. package/lib/cjs/resources/payment_methods.js +15 -3
  165. package/lib/cjs/resources/paypal_gateways.d.ts +19 -17
  166. package/lib/cjs/resources/paypal_gateways.js +15 -3
  167. package/lib/cjs/resources/paypal_payments.d.ts +33 -31
  168. package/lib/cjs/resources/paypal_payments.js +15 -3
  169. package/lib/cjs/resources/percentage_discount_promotions.d.ts +74 -64
  170. package/lib/cjs/resources/percentage_discount_promotions.js +19 -3
  171. package/lib/cjs/resources/price_frequency_tiers.d.ts +28 -26
  172. package/lib/cjs/resources/price_frequency_tiers.js +15 -3
  173. package/lib/cjs/resources/price_lists.d.ts +22 -20
  174. package/lib/cjs/resources/price_lists.js +15 -3
  175. package/lib/cjs/resources/price_tiers.d.ts +19 -17
  176. package/lib/cjs/resources/price_tiers.js +12 -0
  177. package/lib/cjs/resources/price_volume_tiers.d.ts +28 -26
  178. package/lib/cjs/resources/price_volume_tiers.js +15 -3
  179. package/lib/cjs/resources/prices.d.ts +41 -39
  180. package/lib/cjs/resources/prices.js +15 -3
  181. package/lib/cjs/resources/promotion_rules.d.ts +13 -10
  182. package/lib/cjs/resources/promotion_rules.js +12 -0
  183. package/lib/cjs/resources/promotions.d.ts +31 -26
  184. package/lib/cjs/resources/promotions.js +16 -0
  185. package/lib/cjs/resources/recurring_order_copies.d.ts +28 -29
  186. package/lib/cjs/resources/recurring_order_copies.js +11 -3
  187. package/lib/cjs/resources/refunds.d.ts +27 -25
  188. package/lib/cjs/resources/refunds.js +12 -0
  189. package/lib/cjs/resources/reserved_stocks.d.ts +13 -14
  190. package/lib/cjs/resources/reserved_stocks.js +8 -0
  191. package/lib/cjs/resources/return_line_items.d.ts +27 -28
  192. package/lib/cjs/resources/return_line_items.js +11 -3
  193. package/lib/cjs/resources/returns.d.ts +51 -49
  194. package/lib/cjs/resources/returns.js +15 -3
  195. package/lib/cjs/resources/satispay_gateways.d.ts +24 -22
  196. package/lib/cjs/resources/satispay_gateways.js +15 -3
  197. package/lib/cjs/resources/satispay_payments.d.ts +31 -28
  198. package/lib/cjs/resources/satispay_payments.js +15 -3
  199. package/lib/cjs/resources/shipments.d.ts +59 -52
  200. package/lib/cjs/resources/shipments.js +13 -1
  201. package/lib/cjs/resources/shipping_categories.d.ts +17 -15
  202. package/lib/cjs/resources/shipping_categories.js +15 -3
  203. package/lib/cjs/resources/shipping_method_tiers.d.ts +19 -17
  204. package/lib/cjs/resources/shipping_method_tiers.js +12 -0
  205. package/lib/cjs/resources/shipping_methods.d.ts +79 -77
  206. package/lib/cjs/resources/shipping_methods.js +15 -3
  207. package/lib/cjs/resources/shipping_weight_tiers.d.ts +27 -25
  208. package/lib/cjs/resources/shipping_weight_tiers.js +15 -3
  209. package/lib/cjs/resources/shipping_zones.d.ts +34 -32
  210. package/lib/cjs/resources/shipping_zones.js +15 -3
  211. package/lib/cjs/resources/sku_list_items.d.ts +28 -26
  212. package/lib/cjs/resources/sku_list_items.js +15 -3
  213. package/lib/cjs/resources/sku_list_promotion_rules.d.ts +39 -37
  214. package/lib/cjs/resources/sku_list_promotion_rules.js +15 -3
  215. package/lib/cjs/resources/sku_lists.d.ts +37 -35
  216. package/lib/cjs/resources/sku_lists.js +15 -3
  217. package/lib/cjs/resources/sku_options.d.ts +45 -43
  218. package/lib/cjs/resources/sku_options.js +15 -3
  219. package/lib/cjs/resources/skus.d.ts +58 -56
  220. package/lib/cjs/resources/skus.js +15 -3
  221. package/lib/cjs/resources/stock_items.d.ts +30 -28
  222. package/lib/cjs/resources/stock_items.js +15 -3
  223. package/lib/cjs/resources/stock_line_items.d.ts +19 -17
  224. package/lib/cjs/resources/stock_line_items.js +12 -0
  225. package/lib/cjs/resources/stock_locations.d.ts +31 -29
  226. package/lib/cjs/resources/stock_locations.js +15 -3
  227. package/lib/cjs/resources/stock_reservations.d.ts +17 -18
  228. package/lib/cjs/resources/stock_reservations.js +8 -0
  229. package/lib/cjs/resources/stock_transfers.d.ts +44 -42
  230. package/lib/cjs/resources/stock_transfers.js +15 -3
  231. package/lib/cjs/resources/stripe_gateways.d.ts +24 -22
  232. package/lib/cjs/resources/stripe_gateways.js +15 -3
  233. package/lib/cjs/resources/stripe_payments.d.ts +34 -29
  234. package/lib/cjs/resources/stripe_payments.js +15 -3
  235. package/lib/cjs/resources/subscription_models.d.ts +26 -27
  236. package/lib/cjs/resources/subscription_models.js +11 -3
  237. package/lib/cjs/resources/tags.d.ts +12 -13
  238. package/lib/cjs/resources/tags.js +11 -3
  239. package/lib/cjs/resources/tax_calculators.d.ts +15 -13
  240. package/lib/cjs/resources/tax_calculators.js +12 -0
  241. package/lib/cjs/resources/tax_categories.d.ts +32 -30
  242. package/lib/cjs/resources/tax_categories.js +15 -3
  243. package/lib/cjs/resources/tax_rules.d.ts +53 -51
  244. package/lib/cjs/resources/tax_rules.js +15 -3
  245. package/lib/cjs/resources/taxjar_accounts.d.ts +23 -21
  246. package/lib/cjs/resources/taxjar_accounts.js +15 -3
  247. package/lib/cjs/resources/transactions.d.ts +25 -23
  248. package/lib/cjs/resources/transactions.js +12 -0
  249. package/lib/cjs/resources/versions.d.ts +22 -0
  250. package/lib/cjs/resources/versions.js +24 -0
  251. package/lib/cjs/resources/voids.d.ts +27 -25
  252. package/lib/cjs/resources/voids.js +12 -0
  253. package/lib/cjs/resources/webhooks.d.ts +28 -26
  254. package/lib/cjs/resources/webhooks.js +15 -3
  255. package/lib/cjs/resources/wire_transfers.d.ts +18 -16
  256. package/lib/cjs/resources/wire_transfers.js +15 -3
  257. package/lib/cjs/static.d.ts +1 -1
  258. package/lib/cjs/util.d.ts +3 -1
  259. package/lib/esm/api.d.ts +3 -22
  260. package/lib/esm/api.js +15 -0
  261. package/lib/esm/client.d.ts +8 -15
  262. package/lib/esm/client.js +10 -42
  263. package/lib/esm/commercelayer.d.ts +5 -4
  264. package/lib/esm/commercelayer.js +4 -3
  265. package/lib/esm/common.d.ts +0 -1
  266. package/lib/esm/common.js +2 -11
  267. package/lib/esm/config.d.ts +0 -1
  268. package/lib/esm/config.js +0 -1
  269. package/lib/esm/debug.js +4 -0
  270. package/lib/esm/error.d.ts +0 -1
  271. package/lib/esm/error.js +4 -1
  272. package/lib/esm/index.d.ts +1 -1
  273. package/lib/esm/index.js +2 -0
  274. package/lib/esm/interceptor.d.ts +2 -6
  275. package/lib/esm/jsonapi.js +2 -9
  276. package/lib/esm/model.d.ts +1 -0
  277. package/lib/esm/query.d.ts +15 -9
  278. package/lib/esm/query.js +2 -2
  279. package/lib/esm/resource.d.ts +19 -29
  280. package/lib/esm/resource.js +10 -34
  281. package/lib/esm/resources/addresses.d.ts +75 -73
  282. package/lib/esm/resources/addresses.js +15 -3
  283. package/lib/esm/resources/adjustments.d.ts +21 -19
  284. package/lib/esm/resources/adjustments.js +15 -3
  285. package/lib/esm/resources/adyen_gateways.d.ts +36 -34
  286. package/lib/esm/resources/adyen_gateways.js +15 -3
  287. package/lib/esm/resources/adyen_payments.d.ts +29 -27
  288. package/lib/esm/resources/adyen_payments.js +15 -3
  289. package/lib/esm/resources/application.d.ts +13 -14
  290. package/lib/esm/resources/application.js +7 -2
  291. package/lib/esm/resources/attachments.d.ts +80 -81
  292. package/lib/esm/resources/attachments.js +11 -3
  293. package/lib/esm/resources/authorizations.d.ts +45 -43
  294. package/lib/esm/resources/authorizations.js +13 -1
  295. package/lib/esm/resources/avalara_accounts.d.ts +33 -31
  296. package/lib/esm/resources/avalara_accounts.js +15 -3
  297. package/lib/esm/resources/axerve_gateways.d.ts +25 -22
  298. package/lib/esm/resources/axerve_gateways.js +15 -3
  299. package/lib/esm/resources/axerve_payments.d.ts +28 -26
  300. package/lib/esm/resources/axerve_payments.js +15 -3
  301. package/lib/esm/resources/billing_info_validation_rules.d.ts +18 -16
  302. package/lib/esm/resources/billing_info_validation_rules.js +15 -3
  303. package/lib/esm/resources/bing_geocoders.d.ts +15 -16
  304. package/lib/esm/resources/bing_geocoders.js +11 -3
  305. package/lib/esm/resources/braintree_gateways.d.ts +35 -33
  306. package/lib/esm/resources/braintree_gateways.js +15 -3
  307. package/lib/esm/resources/braintree_payments.d.ts +31 -29
  308. package/lib/esm/resources/braintree_payments.js +15 -3
  309. package/lib/esm/resources/bundles.d.ts +56 -54
  310. package/lib/esm/resources/bundles.js +15 -3
  311. package/lib/esm/resources/captures.d.ts +36 -34
  312. package/lib/esm/resources/captures.js +13 -1
  313. package/lib/esm/resources/carrier_accounts.d.ts +17 -15
  314. package/lib/esm/resources/carrier_accounts.js +12 -0
  315. package/lib/esm/resources/checkout_com_gateways.d.ts +26 -24
  316. package/lib/esm/resources/checkout_com_gateways.js +15 -3
  317. package/lib/esm/resources/checkout_com_payments.d.ts +40 -38
  318. package/lib/esm/resources/checkout_com_payments.js +15 -3
  319. package/lib/esm/resources/cleanups.d.ts +25 -23
  320. package/lib/esm/resources/cleanups.js +14 -2
  321. package/lib/esm/resources/coupon_codes_promotion_rules.d.ts +32 -30
  322. package/lib/esm/resources/coupon_codes_promotion_rules.js +15 -3
  323. package/lib/esm/resources/coupon_recipients.d.ts +27 -25
  324. package/lib/esm/resources/coupon_recipients.js +15 -3
  325. package/lib/esm/resources/coupons.d.ts +40 -38
  326. package/lib/esm/resources/coupons.js +15 -3
  327. package/lib/esm/resources/customer_addresses.d.ts +24 -22
  328. package/lib/esm/resources/customer_addresses.js +15 -3
  329. package/lib/esm/resources/customer_groups.d.ts +18 -16
  330. package/lib/esm/resources/customer_groups.js +15 -3
  331. package/lib/esm/resources/customer_password_resets.d.ts +17 -18
  332. package/lib/esm/resources/customer_password_resets.js +11 -3
  333. package/lib/esm/resources/customer_payment_sources.d.ts +39 -45
  334. package/lib/esm/resources/customer_payment_sources.js +15 -3
  335. package/lib/esm/resources/customer_subscriptions.d.ts +16 -14
  336. package/lib/esm/resources/customer_subscriptions.js +15 -3
  337. package/lib/esm/resources/customers.d.ts +36 -37
  338. package/lib/esm/resources/customers.js +11 -3
  339. package/lib/esm/resources/delivery_lead_times.d.ts +28 -26
  340. package/lib/esm/resources/delivery_lead_times.js +15 -3
  341. package/lib/esm/resources/event_callbacks.d.ts +14 -15
  342. package/lib/esm/resources/event_callbacks.js +8 -0
  343. package/lib/esm/resources/events.d.ts +12 -13
  344. package/lib/esm/resources/events.js +8 -0
  345. package/lib/esm/resources/exports.d.ts +26 -27
  346. package/lib/esm/resources/exports.js +10 -2
  347. package/lib/esm/resources/external_gateways.d.ts +33 -31
  348. package/lib/esm/resources/external_gateways.js +15 -3
  349. package/lib/esm/resources/external_payments.d.ts +24 -22
  350. package/lib/esm/resources/external_payments.js +15 -3
  351. package/lib/esm/resources/external_promotions.d.ts +70 -60
  352. package/lib/esm/resources/external_promotions.js +19 -3
  353. package/lib/esm/resources/external_tax_calculators.d.ts +20 -18
  354. package/lib/esm/resources/external_tax_calculators.js +15 -3
  355. package/lib/esm/resources/fixed_amount_promotions.d.ts +71 -61
  356. package/lib/esm/resources/fixed_amount_promotions.js +19 -3
  357. package/lib/esm/resources/fixed_price_promotions.d.ts +75 -65
  358. package/lib/esm/resources/fixed_price_promotions.js +19 -3
  359. package/lib/esm/resources/free_gift_promotions.d.ts +74 -64
  360. package/lib/esm/resources/free_gift_promotions.js +19 -3
  361. package/lib/esm/resources/free_shipping_promotions.d.ts +67 -57
  362. package/lib/esm/resources/free_shipping_promotions.js +19 -3
  363. package/lib/esm/resources/geocoders.d.ts +12 -13
  364. package/lib/esm/resources/geocoders.js +8 -0
  365. package/lib/esm/resources/gift_card_recipients.d.ts +27 -25
  366. package/lib/esm/resources/gift_card_recipients.js +15 -3
  367. package/lib/esm/resources/gift_cards.d.ts +68 -66
  368. package/lib/esm/resources/gift_cards.js +15 -3
  369. package/lib/esm/resources/google_geocoders.d.ts +15 -16
  370. package/lib/esm/resources/google_geocoders.js +11 -3
  371. package/lib/esm/resources/imports.d.ts +31 -29
  372. package/lib/esm/resources/imports.js +10 -2
  373. package/lib/esm/resources/in_stock_subscriptions.d.ts +37 -35
  374. package/lib/esm/resources/in_stock_subscriptions.js +15 -3
  375. package/lib/esm/resources/inventory_models.d.ts +27 -25
  376. package/lib/esm/resources/inventory_models.js +15 -3
  377. package/lib/esm/resources/inventory_return_locations.d.ts +23 -21
  378. package/lib/esm/resources/inventory_return_locations.js +15 -3
  379. package/lib/esm/resources/inventory_stock_locations.d.ts +26 -24
  380. package/lib/esm/resources/inventory_stock_locations.js +15 -3
  381. package/lib/esm/resources/klarna_gateways.d.ts +24 -22
  382. package/lib/esm/resources/klarna_gateways.js +15 -3
  383. package/lib/esm/resources/klarna_payments.d.ts +29 -27
  384. package/lib/esm/resources/klarna_payments.js +15 -3
  385. package/lib/esm/resources/line_item_options.d.ts +40 -41
  386. package/lib/esm/resources/line_item_options.js +11 -3
  387. package/lib/esm/resources/line_items.d.ts +93 -90
  388. package/lib/esm/resources/line_items.js +11 -3
  389. package/lib/esm/resources/manual_gateways.d.ts +16 -14
  390. package/lib/esm/resources/manual_gateways.js +15 -3
  391. package/lib/esm/resources/manual_tax_calculators.d.ts +22 -20
  392. package/lib/esm/resources/manual_tax_calculators.js +15 -3
  393. package/lib/esm/resources/markets.d.ts +61 -59
  394. package/lib/esm/resources/markets.js +15 -3
  395. package/lib/esm/resources/merchants.d.ts +20 -18
  396. package/lib/esm/resources/merchants.js +15 -3
  397. package/lib/esm/resources/order_amount_promotion_rules.d.ts +35 -33
  398. package/lib/esm/resources/order_amount_promotion_rules.js +15 -3
  399. package/lib/esm/resources/order_copies.d.ts +28 -29
  400. package/lib/esm/resources/order_copies.js +11 -3
  401. package/lib/esm/resources/order_factories.d.ts +20 -21
  402. package/lib/esm/resources/order_factories.js +8 -0
  403. package/lib/esm/resources/order_subscription_items.d.ts +41 -35
  404. package/lib/esm/resources/order_subscription_items.js +15 -3
  405. package/lib/esm/resources/order_subscriptions.d.ts +53 -51
  406. package/lib/esm/resources/order_subscriptions.js +15 -3
  407. package/lib/esm/resources/order_validation_rules.d.ts +14 -12
  408. package/lib/esm/resources/order_validation_rules.js +12 -0
  409. package/lib/esm/resources/orders.d.ts +238 -231
  410. package/lib/esm/resources/orders.js +15 -3
  411. package/lib/esm/resources/organization.d.ts +24 -25
  412. package/lib/esm/resources/organization.js +7 -2
  413. package/lib/esm/resources/packages.d.ts +32 -30
  414. package/lib/esm/resources/packages.js +15 -3
  415. package/lib/esm/resources/parcel_line_items.d.ts +24 -22
  416. package/lib/esm/resources/parcel_line_items.js +15 -3
  417. package/lib/esm/resources/parcels.d.ts +95 -93
  418. package/lib/esm/resources/parcels.js +15 -3
  419. package/lib/esm/resources/payment_gateways.d.ts +14 -12
  420. package/lib/esm/resources/payment_gateways.js +12 -0
  421. package/lib/esm/resources/payment_methods.d.ts +50 -48
  422. package/lib/esm/resources/payment_methods.js +15 -3
  423. package/lib/esm/resources/paypal_gateways.d.ts +19 -17
  424. package/lib/esm/resources/paypal_gateways.js +15 -3
  425. package/lib/esm/resources/paypal_payments.d.ts +33 -31
  426. package/lib/esm/resources/paypal_payments.js +15 -3
  427. package/lib/esm/resources/percentage_discount_promotions.d.ts +74 -64
  428. package/lib/esm/resources/percentage_discount_promotions.js +19 -3
  429. package/lib/esm/resources/price_frequency_tiers.d.ts +28 -26
  430. package/lib/esm/resources/price_frequency_tiers.js +15 -3
  431. package/lib/esm/resources/price_lists.d.ts +22 -20
  432. package/lib/esm/resources/price_lists.js +15 -3
  433. package/lib/esm/resources/price_tiers.d.ts +19 -17
  434. package/lib/esm/resources/price_tiers.js +12 -0
  435. package/lib/esm/resources/price_volume_tiers.d.ts +28 -26
  436. package/lib/esm/resources/price_volume_tiers.js +15 -3
  437. package/lib/esm/resources/prices.d.ts +41 -39
  438. package/lib/esm/resources/prices.js +15 -3
  439. package/lib/esm/resources/promotion_rules.d.ts +13 -10
  440. package/lib/esm/resources/promotion_rules.js +12 -0
  441. package/lib/esm/resources/promotions.d.ts +31 -26
  442. package/lib/esm/resources/promotions.js +16 -0
  443. package/lib/esm/resources/recurring_order_copies.d.ts +28 -29
  444. package/lib/esm/resources/recurring_order_copies.js +11 -3
  445. package/lib/esm/resources/refunds.d.ts +27 -25
  446. package/lib/esm/resources/refunds.js +12 -0
  447. package/lib/esm/resources/reserved_stocks.d.ts +13 -14
  448. package/lib/esm/resources/reserved_stocks.js +8 -0
  449. package/lib/esm/resources/return_line_items.d.ts +27 -28
  450. package/lib/esm/resources/return_line_items.js +11 -3
  451. package/lib/esm/resources/returns.d.ts +51 -49
  452. package/lib/esm/resources/returns.js +15 -3
  453. package/lib/esm/resources/satispay_gateways.d.ts +24 -22
  454. package/lib/esm/resources/satispay_gateways.js +15 -3
  455. package/lib/esm/resources/satispay_payments.d.ts +31 -28
  456. package/lib/esm/resources/satispay_payments.js +15 -3
  457. package/lib/esm/resources/shipments.d.ts +59 -52
  458. package/lib/esm/resources/shipments.js +13 -1
  459. package/lib/esm/resources/shipping_categories.d.ts +17 -15
  460. package/lib/esm/resources/shipping_categories.js +15 -3
  461. package/lib/esm/resources/shipping_method_tiers.d.ts +19 -17
  462. package/lib/esm/resources/shipping_method_tiers.js +12 -0
  463. package/lib/esm/resources/shipping_methods.d.ts +79 -77
  464. package/lib/esm/resources/shipping_methods.js +15 -3
  465. package/lib/esm/resources/shipping_weight_tiers.d.ts +27 -25
  466. package/lib/esm/resources/shipping_weight_tiers.js +15 -3
  467. package/lib/esm/resources/shipping_zones.d.ts +34 -32
  468. package/lib/esm/resources/shipping_zones.js +15 -3
  469. package/lib/esm/resources/sku_list_items.d.ts +28 -26
  470. package/lib/esm/resources/sku_list_items.js +15 -3
  471. package/lib/esm/resources/sku_list_promotion_rules.d.ts +39 -37
  472. package/lib/esm/resources/sku_list_promotion_rules.js +15 -3
  473. package/lib/esm/resources/sku_lists.d.ts +37 -35
  474. package/lib/esm/resources/sku_lists.js +15 -3
  475. package/lib/esm/resources/sku_options.d.ts +45 -43
  476. package/lib/esm/resources/sku_options.js +15 -3
  477. package/lib/esm/resources/skus.d.ts +58 -56
  478. package/lib/esm/resources/skus.js +15 -3
  479. package/lib/esm/resources/stock_items.d.ts +30 -28
  480. package/lib/esm/resources/stock_items.js +15 -3
  481. package/lib/esm/resources/stock_line_items.d.ts +19 -17
  482. package/lib/esm/resources/stock_line_items.js +12 -0
  483. package/lib/esm/resources/stock_locations.d.ts +31 -29
  484. package/lib/esm/resources/stock_locations.js +15 -3
  485. package/lib/esm/resources/stock_reservations.d.ts +17 -18
  486. package/lib/esm/resources/stock_reservations.js +8 -0
  487. package/lib/esm/resources/stock_transfers.d.ts +44 -42
  488. package/lib/esm/resources/stock_transfers.js +15 -3
  489. package/lib/esm/resources/stripe_gateways.d.ts +24 -22
  490. package/lib/esm/resources/stripe_gateways.js +15 -3
  491. package/lib/esm/resources/stripe_payments.d.ts +34 -29
  492. package/lib/esm/resources/stripe_payments.js +15 -3
  493. package/lib/esm/resources/subscription_models.d.ts +26 -27
  494. package/lib/esm/resources/subscription_models.js +11 -3
  495. package/lib/esm/resources/tags.d.ts +12 -13
  496. package/lib/esm/resources/tags.js +11 -3
  497. package/lib/esm/resources/tax_calculators.d.ts +15 -13
  498. package/lib/esm/resources/tax_calculators.js +12 -0
  499. package/lib/esm/resources/tax_categories.d.ts +32 -30
  500. package/lib/esm/resources/tax_categories.js +15 -3
  501. package/lib/esm/resources/tax_rules.d.ts +53 -51
  502. package/lib/esm/resources/tax_rules.js +15 -3
  503. package/lib/esm/resources/taxjar_accounts.d.ts +23 -21
  504. package/lib/esm/resources/taxjar_accounts.js +15 -3
  505. package/lib/esm/resources/transactions.d.ts +25 -23
  506. package/lib/esm/resources/transactions.js +12 -0
  507. package/lib/esm/resources/versions.d.ts +22 -0
  508. package/lib/esm/resources/versions.js +22 -0
  509. package/lib/esm/resources/voids.d.ts +27 -25
  510. package/lib/esm/resources/voids.js +12 -0
  511. package/lib/esm/resources/webhooks.d.ts +28 -26
  512. package/lib/esm/resources/webhooks.js +15 -3
  513. package/lib/esm/resources/wire_transfers.d.ts +18 -16
  514. package/lib/esm/resources/wire_transfers.js +15 -3
  515. package/lib/esm/static.d.ts +1 -1
  516. package/lib/esm/util.d.ts +3 -1
  517. package/lib/tsconfig.esm.tsbuildinfo +1 -1
  518. package/lib/tsconfig.tsbuildinfo +1 -1
  519. package/package.json +9 -9
package/lib/esm/error.js CHANGED
@@ -1,3 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
1
2
  var ErrorType;
2
3
  (function (ErrorType) {
3
4
  ErrorType["CLIENT"] = "client";
@@ -7,6 +8,7 @@ var ErrorType;
7
8
  ErrorType["CANCEL"] = "cancel";
8
9
  })(ErrorType || (ErrorType = {}));
9
10
  class SdkError extends Error {
11
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
10
12
  static isSdkError(error) {
11
13
  return error && [SdkError.NAME, ApiError.NAME].includes(error.name) && Object.values(ErrorType).includes(error.type);
12
14
  }
@@ -18,11 +20,12 @@ class SdkError extends Error {
18
20
  }
19
21
  SdkError.NAME = 'SdkError';
20
22
  class ApiError extends SdkError {
23
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
21
24
  static isApiError(error) {
22
25
  return SdkError.isSdkError(error) && (error.name === ApiError.NAME) && (error.type === ErrorType.RESPONSE);
23
26
  }
24
27
  constructor(error) {
25
- super({ ...error, type: ErrorType.RESPONSE });
28
+ super(Object.assign(Object.assign({}, error), { type: ErrorType.RESPONSE }));
26
29
  this.errors = [];
27
30
  this.name = ApiError.NAME; // this.constructor.name
28
31
  }
@@ -2,6 +2,6 @@ export { default, CommerceLayer } from './commercelayer';
2
2
  export type { CommerceLayerClient } from './commercelayer';
3
3
  export { CommerceLayerStatic } from './static';
4
4
  export type { QueryParamsRetrieve, QueryParamsList, QueryParams } from './query';
5
- export type * from './model';
5
+ export * from './model';
6
6
  export type { RequestObj, ResponseObj, ErrorObj, HeadersObj } from './interceptor';
7
7
  export type { SdkError, ApiError, ErrorType } from './error';
package/lib/esm/index.js CHANGED
@@ -2,3 +2,5 @@
2
2
  export { default, CommerceLayer } from './commercelayer';
3
3
  // Commerce Layer static functions
4
4
  export { CommerceLayerStatic } from './static';
5
+ // Resource model types
6
+ export * from './model';
@@ -1,4 +1,4 @@
1
- import type { AxiosError, AxiosInterceptorManager, AxiosRequestConfig, AxiosResponse, AxiosResponseHeaders, RawAxiosResponseHeaders } from 'axios';
1
+ import { AxiosError, AxiosInterceptorManager, AxiosRequestConfig, AxiosResponse, AxiosResponseHeaders, RawAxiosResponseHeaders } from 'axios';
2
2
  type InterceptorManager = {
3
3
  request: AxiosInterceptorManager<AxiosRequestConfig>;
4
4
  response: AxiosInterceptorManager<any>;
@@ -7,11 +7,7 @@ type RequestObj = AxiosRequestConfig;
7
7
  type RequestInterceptor = (request: RequestObj) => RequestObj | Promise<RequestObj>;
8
8
  type ResponseObj = AxiosResponse;
9
9
  type ResponseInterceptor = (response: ResponseObj) => ResponseObj;
10
- type ApiHeadersList = 'x-ratelimit-limit' | 'x-ratelimit-count' | 'x-ratelimit-period' | 'x-ratelimit-interval' | 'x-ratelimit-remaining';
11
- type ApiHeaders = {
12
- [key in ApiHeadersList]: string | number | boolean;
13
- };
14
- type HeadersObj = (AxiosResponseHeaders | RawAxiosResponseHeaders) & ApiHeaders;
10
+ type HeadersObj = AxiosResponseHeaders | RawAxiosResponseHeaders;
15
11
  type ErrorObj = AxiosError;
16
12
  type ErrorInterceptor = (error: ErrorObj) => ErrorObj;
17
13
  type InterceptorType = 'request' | 'response';
@@ -28,11 +28,7 @@ const denormalizeResource = (res, included) => {
28
28
  debug('denormalize resource: %O, %o', res, included || {});
29
29
  if (!res)
30
30
  return res;
31
- const resource = {
32
- id: res.id,
33
- type: res.type,
34
- ...res.attributes,
35
- };
31
+ const resource = Object.assign({ id: res.id, type: res.type }, res.attributes);
36
32
  if (res.relationships)
37
33
  Object.keys(res.relationships).forEach(key => {
38
34
  const rel = res.relationships[key].data;
@@ -57,10 +53,7 @@ const normalize = (resource) => {
57
53
  if (['type', 'id'].includes(field))
58
54
  continue;
59
55
  const value = resource[field];
60
- if (Array.isArray(value) && (value.length === 1) && isResourceType(value[0]) && (value[0].id === null)) {
61
- relationships[field] = { data: [] };
62
- }
63
- else if (value && isResourceType(value) && (value.id === null)) {
56
+ if (value && isResourceType(value) && value.id === null) {
64
57
  relationships[field] = { data: null };
65
58
  }
66
59
  else if (value && (isResourceId(value) || (Array.isArray(value) && isResourceId(value[0])))) {
@@ -114,6 +114,7 @@ export type { TaxCategory, TaxCategoryCreate, TaxCategoryUpdate } from './resour
114
114
  export type { TaxRule, TaxRuleCreate, TaxRuleUpdate } from './resources/tax_rules';
115
115
  export type { TaxjarAccount, TaxjarAccountCreate, TaxjarAccountUpdate } from './resources/taxjar_accounts';
116
116
  export type { Transaction } from './resources/transactions';
117
+ export type { Version } from './resources/versions';
117
118
  export type { Void } from './resources/voids';
118
119
  export type { Webhook, WebhookCreate, WebhookUpdate } from './resources/webhooks';
119
120
  export type { WireTransfer, WireTransferCreate, WireTransferUpdate } from './resources/wire_transfers';
@@ -1,17 +1,23 @@
1
- import type { ResourceType } from "./resource";
2
- type QueryFilter = Record<string, string | number | boolean>;
1
+ import { ResourceType } from "./resource";
3
2
  interface QueryParamsRetrieve {
4
3
  include?: string[];
5
- fields?: string[] | Record<string, string[]>;
4
+ fields?: string[] | {
5
+ [key: string]: string[];
6
+ };
6
7
  }
7
8
  interface QueryParamsList extends QueryParamsRetrieve {
8
- sort?: string[] | Record<string, 'asc' | 'desc'>;
9
- filters?: QueryFilter;
9
+ sort?: string[] | {
10
+ [key: string]: 'asc' | 'desc';
11
+ };
12
+ filters?: {
13
+ [key: string]: string | number | boolean;
14
+ };
10
15
  pageNumber?: number;
11
16
  pageSize?: number;
12
17
  }
13
18
  type QueryParams = QueryParamsRetrieve | QueryParamsList;
14
- export type { QueryParamsRetrieve, QueryParamsList, QueryParams, QueryFilter };
15
- declare const isParamsList: (params: any) => params is QueryParamsList;
16
- declare const generateQueryStringParams: (params: QueryParamsRetrieve | QueryParamsList | undefined, res: string | ResourceType) => Record<string, string>;
17
- export { generateQueryStringParams, isParamsList };
19
+ export { QueryParamsRetrieve, QueryParamsList, QueryParams };
20
+ declare const generateQueryStringParams: (params: QueryParamsRetrieve | QueryParamsList | undefined, res: string | ResourceType) => {
21
+ [key: string]: string;
22
+ };
23
+ export { generateQueryStringParams };
package/lib/esm/query.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import Debug from './debug';
2
2
  const debug = Debug('query');
3
3
  const isParamsList = (params) => {
4
- return params && (params.filters || params.pageNumber || params.pageSize || params.sort);
4
+ return (params.filters || params.pageNumber || params.pageSize || params.sort);
5
5
  };
6
6
  const generateQueryStringParams = (params, res) => {
7
7
  debug('generate query string params: %O, %O', params, res);
@@ -42,4 +42,4 @@ const generateQueryStringParams = (params, res) => {
42
42
  debug('query string params: %O', qp);
43
43
  return qp;
44
44
  };
45
- export { generateQueryStringParams, isParamsList };
45
+ export { generateQueryStringParams };
@@ -1,7 +1,8 @@
1
1
  import { type ApiClientInitConfig } from './client';
2
- import type { QueryParamsRetrieve, QueryParamsList, QueryFilter, QueryParams } from './query';
2
+ import { type QueryParamsRetrieve, type QueryParamsList } from './query';
3
3
  import type { ResourceTypeLock } from './api';
4
4
  import type { InterceptorManager } from './interceptor';
5
+ import type { QueryParams } from '.';
5
6
  type ResourceNull = {
6
7
  id: null;
7
8
  } & ResourceType;
@@ -13,19 +14,23 @@ interface ResourceType {
13
14
  interface ResourceId extends ResourceType {
14
15
  readonly id: string;
15
16
  }
16
- interface ResourceBase {
17
- reference?: string | null;
18
- reference_origin?: string | null;
17
+ interface Resource extends ResourceId {
18
+ reference?: string;
19
+ reference_origin?: string;
19
20
  metadata?: Metadata;
20
- }
21
- interface Resource extends ResourceBase, ResourceId {
22
21
  readonly created_at: string;
23
22
  readonly updated_at: string;
24
23
  }
25
- interface ResourceCreate extends ResourceBase {
24
+ interface ResourceCreate {
25
+ reference?: string;
26
+ reference_origin?: string;
27
+ metadata?: Metadata;
26
28
  }
27
- interface ResourceUpdate extends ResourceBase {
29
+ interface ResourceUpdate {
28
30
  readonly id: string;
31
+ reference?: string;
32
+ reference_origin?: string;
33
+ metadata?: Metadata;
29
34
  }
30
35
  type ListMeta = {
31
36
  readonly pageCount: number;
@@ -39,14 +44,8 @@ declare class ListResponse<R> extends Array<R> {
39
44
  first(): R | undefined;
40
45
  last(): R | undefined;
41
46
  get(index: number): R | undefined;
42
- hasNextPage(): boolean;
43
- hasPrevPage(): boolean;
44
- getRecordCount(): number;
45
- getPageCount(): number;
46
- get recordCount(): number;
47
- get pageCount(): number;
48
47
  }
49
- export type { Metadata, ResourceType, ResourceId, Resource, ResourceCreate, ResourceUpdate, ListResponse, ListMeta, ResourceRel };
48
+ export type { Metadata, ResourceType, ResourceId, Resource, ResourceCreate, ResourceUpdate, ListResponse, ResourceRel };
50
49
  type ResourceAdapterConfig = {};
51
50
  type ResourcesInitConfig = ResourceAdapterConfig & ApiClientInitConfig;
52
51
  type ResourcesConfig = Partial<ResourcesInitConfig>;
@@ -64,22 +63,13 @@ declare class ResourceAdapter {
64
63
  delete(resource: ResourceId, options?: ResourcesConfig): Promise<void>;
65
64
  fetch<R extends Resource>(resource: string | ResourceType, path: string, params?: QueryParams, options?: ResourcesConfig): Promise<R | ListResponse<R>>;
66
65
  }
67
- declare abstract class ApiResourceBase<R extends Resource> {
66
+ declare abstract class ApiResource {
68
67
  static readonly TYPE: ResourceTypeLock;
69
- protected readonly resources: ResourceAdapter;
68
+ protected resources: ResourceAdapter;
70
69
  constructor(adapter: ResourceAdapter);
71
70
  abstract relationship(id: string | ResourceId | null): ResourceRel;
72
- abstract type(): ResourceTypeLock;
73
- update(resource: ResourceUpdate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<R>;
74
- count(filter?: QueryFilter | QueryParamsList, options?: ResourcesConfig): Promise<number>;
75
- }
76
- declare abstract class ApiResource<R extends Resource> extends ApiResourceBase<R> {
77
- retrieve(id: string | ResourceId, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<R>;
78
- list(params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<R>>;
79
- }
80
- declare abstract class ApiSingleton<R extends Resource> extends ApiResourceBase<R> {
81
- retrieve(params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<R>;
71
+ abstract type(): string;
72
+ update(resource: ResourceUpdate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<Resource>;
82
73
  }
83
74
  export default ResourceAdapter;
84
- export { ApiResource, ApiSingleton };
85
- export type { ResourcesConfig, ResourcesInitConfig };
75
+ export { ApiResource, type ResourcesConfig, type ResourcesInitConfig };
@@ -12,7 +12,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
12
12
  var _ResourceAdapter_client, _ResourceAdapter_config;
13
13
  import ApiClient from './client';
14
14
  import { denormalize, normalize } from './jsonapi';
15
- import { generateQueryStringParams, isParamsList } from './query';
15
+ import { generateQueryStringParams } from './query';
16
16
  import config from './config';
17
17
  import Debug from './debug';
18
18
  const debug = Debug('resource');
@@ -24,12 +24,6 @@ class ListResponse extends Array {
24
24
  first() { return this.length ? this[0] : undefined; }
25
25
  last() { return this.length ? this[this.length - 1] : undefined; }
26
26
  get(index) { return (this.length && (index >= 0)) ? this[index] : undefined; }
27
- hasNextPage() { return (this.meta.currentPage < this.meta.pageCount); }
28
- hasPrevPage() { return (this.meta.currentPage > 1); }
29
- getRecordCount() { return this.meta.recordCount; }
30
- getPageCount() { return this.meta.pageCount; }
31
- get recordCount() { return this.meta.recordCount; }
32
- get pageCount() { return this.meta.pageCount; }
33
27
  }
34
28
  class ResourceAdapter {
35
29
  constructor(config) {
@@ -55,7 +49,7 @@ class ResourceAdapter {
55
49
  const queryParams = generateQueryStringParams(params, resource);
56
50
  if (options === null || options === void 0 ? void 0 : options.params)
57
51
  Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
58
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', `${resource.type}`, undefined, { ...options, params: queryParams });
52
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', `${resource.type}`, undefined, Object.assign(Object.assign({}, options), { params: queryParams }));
59
53
  const r = denormalize(res);
60
54
  return r;
61
55
  }
@@ -64,7 +58,7 @@ class ResourceAdapter {
64
58
  const queryParams = generateQueryStringParams(params, resource);
65
59
  if (options === null || options === void 0 ? void 0 : options.params)
66
60
  Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
67
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', `${resource.type}/${resource.id}`, undefined, { ...options, params: queryParams });
61
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', `${resource.type}/${resource.id}`, undefined, Object.assign(Object.assign({}, options), { params: queryParams }));
68
62
  const r = denormalize(res);
69
63
  return r;
70
64
  }
@@ -74,7 +68,7 @@ class ResourceAdapter {
74
68
  const queryParams = generateQueryStringParams(params, resource);
75
69
  if (options === null || options === void 0 ? void 0 : options.params)
76
70
  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}`, undefined, { ...options, params: queryParams });
71
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', `${resource.type}`, undefined, Object.assign(Object.assign({}, options), { params: queryParams }));
78
72
  const r = denormalize(res);
79
73
  const meta = {
80
74
  pageCount: Number((_a = res.meta) === null || _a === void 0 ? void 0 : _a.page_count),
@@ -90,7 +84,7 @@ class ResourceAdapter {
90
84
  if (options === null || options === void 0 ? void 0 : options.params)
91
85
  Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
92
86
  const data = normalize(resource);
93
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('post', resource.type, data, { ...options, params: queryParams });
87
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('post', resource.type, data, Object.assign(Object.assign({}, options), { params: queryParams }));
94
88
  const r = denormalize(res);
95
89
  return r;
96
90
  }
@@ -100,7 +94,7 @@ class ResourceAdapter {
100
94
  if (options === null || options === void 0 ? void 0 : options.params)
101
95
  Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
102
96
  const data = normalize(resource);
103
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('patch', `${resource.type}/${resource.id}`, data, { ...options, params: queryParams });
97
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('patch', `${resource.type}/${resource.id}`, data, Object.assign(Object.assign({}, options), { params: queryParams }));
104
98
  const r = denormalize(res);
105
99
  return r;
106
100
  }
@@ -114,7 +108,7 @@ class ResourceAdapter {
114
108
  const queryParams = generateQueryStringParams(params, resource);
115
109
  if (options === null || options === void 0 ? void 0 : options.params)
116
110
  Object.assign(queryParams, options === null || options === void 0 ? void 0 : options.params);
117
- const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', path, undefined, { ...options, params: queryParams });
111
+ const res = await __classPrivateFieldGet(this, _ResourceAdapter_client, "f").request('get', path, undefined, Object.assign(Object.assign({}, options), { params: queryParams }));
118
112
  const r = denormalize(res);
119
113
  if (Array.isArray(r)) {
120
114
  const p = params;
@@ -131,33 +125,15 @@ class ResourceAdapter {
131
125
  }
132
126
  }
133
127
  _ResourceAdapter_client = new WeakMap(), _ResourceAdapter_config = new WeakMap();
134
- class ApiResourceBase {
128
+ class ApiResource {
135
129
  constructor(adapter) {
136
130
  debug('new resource instance: %s', this.type());
137
131
  this.resources = adapter;
138
132
  }
139
133
  // reference, reference_origin and metadata attributes are always updatable
140
134
  async update(resource, params, options) {
141
- return this.resources.update({ ...resource, type: this.type() }, params, options);
142
- }
143
- async count(filter, options) {
144
- const params = { filters: isParamsList(filter) ? filter.filters : filter, pageNumber: 1, pageSize: 1 };
145
- const response = await this.resources.list({ type: this.type() }, params, options);
146
- return Promise.resolve(response.meta.recordCount);
147
- }
148
- }
149
- class ApiResource extends ApiResourceBase {
150
- async retrieve(id, params, options) {
151
- return this.resources.retrieve((typeof id === 'string') ? { type: this.type(), id } : id, params, options);
152
- }
153
- async list(params, options) {
154
- return this.resources.list({ type: this.type() }, params, options);
155
- }
156
- }
157
- class ApiSingleton extends ApiResourceBase {
158
- async retrieve(params, options) {
159
- return this.resources.singleton({ type: this.type() }, params, options);
135
+ return this.resources.update(Object.assign(Object.assign({}, resource), { type: this.type() }), params, options);
160
136
  }
161
137
  }
162
138
  export default ResourceAdapter;
163
- export { ApiResource, ApiSingleton };
139
+ export { ApiResource };
@@ -1,100 +1,102 @@
1
- import { ApiResource } from '../resource';
2
- import type { Resource, ResourceCreate, ResourceUpdate, ResourceId, ResourcesConfig, ResourceRel, ListResponse } from '../resource';
3
- import type { QueryParamsRetrieve, QueryParamsList } from '../query';
4
- import type { Geocoder, GeocoderType } from './geocoders';
1
+ import { ApiResource, Resource, ResourceCreate, ResourceUpdate, ResourcesConfig, ResourceId, ResourceRel, ListResponse } from '../resource';
2
+ import type { QueryParamsList, QueryParamsRetrieve } from '../query';
3
+ import type { Geocoder } from './geocoders';
5
4
  import type { Event } from './events';
6
- import type { Tag, TagType } from './tags';
7
- type AddressType = 'addresses';
5
+ import type { Tag } from './tags';
6
+ import type { Version } from './versions';
8
7
  type AddressRel = ResourceRel & {
9
- type: AddressType;
8
+ type: typeof Addresses.TYPE;
10
9
  };
11
10
  type GeocoderRel = ResourceRel & {
12
- type: GeocoderType;
11
+ type: 'geocoders';
13
12
  };
14
13
  type TagRel = ResourceRel & {
15
- type: TagType;
14
+ type: 'tags';
16
15
  };
17
16
  interface Address extends Resource {
18
- readonly type: AddressType;
19
- business?: boolean | null;
20
- first_name?: string | null;
21
- last_name?: string | null;
22
- company?: string | null;
23
- full_name?: string | null;
24
- line_1: string;
25
- line_2?: string | null;
26
- city: string;
27
- zip_code?: string | null;
28
- state_code: string;
29
- country_code: string;
30
- phone: string;
31
- full_address?: string | null;
32
- name?: string | null;
33
- email?: string | null;
34
- notes?: string | null;
35
- lat?: number | null;
36
- lng?: number | null;
37
- is_localized?: boolean | null;
38
- is_geocoded?: boolean | null;
39
- provider_name?: string | null;
40
- map_url?: string | null;
41
- static_map_url?: string | null;
42
- billing_info?: string | null;
43
- geocoder?: Geocoder | null;
44
- events?: Event[] | null;
45
- tags?: Tag[] | null;
17
+ business?: boolean;
18
+ first_name?: string;
19
+ last_name?: string;
20
+ company?: string;
21
+ full_name?: string;
22
+ line_1?: string;
23
+ line_2?: string;
24
+ city?: string;
25
+ zip_code?: string;
26
+ state_code?: string;
27
+ country_code?: string;
28
+ phone?: string;
29
+ full_address?: string;
30
+ name?: string;
31
+ email?: string;
32
+ notes?: string;
33
+ lat?: number;
34
+ lng?: number;
35
+ is_localized?: boolean;
36
+ is_geocoded?: boolean;
37
+ provider_name?: string;
38
+ map_url?: string;
39
+ static_map_url?: string;
40
+ billing_info?: string;
41
+ geocoder?: Geocoder;
42
+ events?: Event[];
43
+ tags?: Tag[];
44
+ versions?: Version[];
46
45
  }
47
46
  interface AddressCreate extends ResourceCreate {
48
- business?: boolean | null;
49
- first_name?: string | null;
50
- last_name?: string | null;
51
- company?: string | null;
47
+ business?: boolean;
48
+ first_name?: string;
49
+ last_name?: string;
50
+ company?: string;
52
51
  line_1: string;
53
- line_2?: string | null;
52
+ line_2?: string;
54
53
  city: string;
55
- zip_code?: string | null;
54
+ zip_code?: string;
56
55
  state_code: string;
57
56
  country_code: string;
58
57
  phone: string;
59
- email?: string | null;
60
- notes?: string | null;
61
- lat?: number | null;
62
- lng?: number | null;
63
- billing_info?: string | null;
64
- geocoder?: GeocoderRel | null;
65
- tags?: TagRel[] | null;
58
+ email?: string;
59
+ notes?: string;
60
+ lat?: number;
61
+ lng?: number;
62
+ billing_info?: string;
63
+ geocoder?: GeocoderRel;
64
+ tags?: TagRel[];
66
65
  }
67
66
  interface AddressUpdate extends ResourceUpdate {
68
- business?: boolean | null;
69
- first_name?: string | null;
70
- last_name?: string | null;
71
- company?: string | null;
72
- line_1?: string | null;
73
- line_2?: string | null;
74
- city?: string | null;
75
- zip_code?: string | null;
76
- state_code?: string | null;
77
- country_code?: string | null;
78
- phone?: string | null;
79
- email?: string | null;
80
- notes?: string | null;
81
- lat?: number | null;
82
- lng?: number | null;
83
- billing_info?: string | null;
84
- geocoder?: GeocoderRel | null;
85
- tags?: TagRel[] | null;
67
+ business?: boolean;
68
+ first_name?: string;
69
+ last_name?: string;
70
+ company?: string;
71
+ line_1?: string;
72
+ line_2?: string;
73
+ city?: string;
74
+ zip_code?: string;
75
+ state_code?: string;
76
+ country_code?: string;
77
+ phone?: string;
78
+ email?: string;
79
+ notes?: string;
80
+ lat?: number;
81
+ lng?: number;
82
+ billing_info?: string;
83
+ geocoder?: GeocoderRel;
84
+ tags?: TagRel[];
86
85
  }
87
- declare class Addresses extends ApiResource<Address> {
88
- static readonly TYPE: AddressType;
86
+ declare class Addresses extends ApiResource {
87
+ static readonly TYPE: 'addresses';
88
+ list(params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Address>>;
89
89
  create(resource: AddressCreate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<Address>;
90
+ retrieve(id: string, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<Address>;
90
91
  update(resource: AddressUpdate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<Address>;
91
- delete(id: string | ResourceId, options?: ResourcesConfig): Promise<void>;
92
+ delete(id: string, options?: ResourcesConfig): Promise<void>;
92
93
  geocoder(addressId: string | Address, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<Geocoder>;
93
94
  events(addressId: string | Address, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Event>>;
94
95
  tags(addressId: string | Address, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Tag>>;
96
+ versions(addressId: string | Address, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Version>>;
95
97
  isAddress(resource: any): resource is Address;
96
98
  relationship(id: string | ResourceId | null): AddressRel;
97
- type(): AddressType;
99
+ type(): string;
98
100
  }
99
101
  export default Addresses;
100
- export type { Address, AddressCreate, AddressUpdate, AddressType };
102
+ export { Address, AddressCreate, AddressUpdate };
@@ -1,13 +1,20 @@
1
1
  import { ApiResource } from '../resource';
2
2
  class Addresses extends ApiResource {
3
+ // static readonly PATH = 'addresses'
4
+ async list(params, options) {
5
+ return this.resources.list({ type: Addresses.TYPE }, params, options);
6
+ }
3
7
  async create(resource, params, options) {
4
- return this.resources.create({ ...resource, type: Addresses.TYPE }, params, options);
8
+ return this.resources.create(Object.assign(Object.assign({}, resource), { type: Addresses.TYPE }), params, options);
9
+ }
10
+ async retrieve(id, params, options) {
11
+ return this.resources.retrieve({ type: Addresses.TYPE, id }, params, options);
5
12
  }
6
13
  async update(resource, params, options) {
7
- return this.resources.update({ ...resource, type: Addresses.TYPE }, params, options);
14
+ return this.resources.update(Object.assign(Object.assign({}, resource), { type: Addresses.TYPE }), params, options);
8
15
  }
9
16
  async delete(id, options) {
10
- await this.resources.delete((typeof id === 'string') ? { id, type: Addresses.TYPE } : id, options);
17
+ await this.resources.delete({ type: Addresses.TYPE, id }, options);
11
18
  }
12
19
  async geocoder(addressId, params, options) {
13
20
  const _addressId = addressId.id || addressId;
@@ -21,6 +28,11 @@ class Addresses extends ApiResource {
21
28
  const _addressId = addressId.id || addressId;
22
29
  return this.resources.fetch({ type: 'tags' }, `addresses/${_addressId}/tags`, params, options);
23
30
  }
31
+ async versions(addressId, params, options) {
32
+ const _addressId = addressId.id || addressId;
33
+ return this.resources.fetch({ type: 'versions' }, `addresses/${_addressId}/versions`, params, options);
34
+ }
35
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/no-explicit-any
24
36
  isAddress(resource) {
25
37
  return resource.type && (resource.type === Addresses.TYPE);
26
38
  }
@@ -1,17 +1,16 @@
1
- import { ApiResource } from '../resource';
2
- import type { Resource, ResourceCreate, ResourceUpdate, ResourceId, ResourcesConfig, ResourceRel } from '../resource';
3
- import type { QueryParamsRetrieve } from '../query';
4
- type AdjustmentType = 'adjustments';
1
+ import { ApiResource, Resource, ResourceCreate, ResourceUpdate, ResourcesConfig, ResourceId, ResourceRel, ListResponse } from '../resource';
2
+ import type { QueryParamsList, QueryParamsRetrieve } from '../query';
3
+ import type { Version } from './versions';
5
4
  type AdjustmentRel = ResourceRel & {
6
- type: AdjustmentType;
5
+ type: typeof Adjustments.TYPE;
7
6
  };
8
7
  interface Adjustment extends Resource {
9
- readonly type: AdjustmentType;
10
- name: string;
11
- currency_code: string;
12
- amount_cents: number;
13
- amount_float: number;
14
- formatted_amount: string;
8
+ name?: string;
9
+ currency_code?: string;
10
+ amount_cents?: number;
11
+ amount_float?: number;
12
+ formatted_amount?: string;
13
+ versions?: Version[];
15
14
  }
16
15
  interface AdjustmentCreate extends ResourceCreate {
17
16
  name: string;
@@ -19,18 +18,21 @@ interface AdjustmentCreate extends ResourceCreate {
19
18
  amount_cents: number;
20
19
  }
21
20
  interface AdjustmentUpdate extends ResourceUpdate {
22
- name?: string | null;
23
- currency_code?: string | null;
24
- amount_cents?: number | null;
21
+ name?: string;
22
+ currency_code?: string;
23
+ amount_cents?: number;
25
24
  }
26
- declare class Adjustments extends ApiResource<Adjustment> {
27
- static readonly TYPE: AdjustmentType;
25
+ declare class Adjustments extends ApiResource {
26
+ static readonly TYPE: 'adjustments';
27
+ list(params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Adjustment>>;
28
28
  create(resource: AdjustmentCreate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<Adjustment>;
29
+ retrieve(id: string, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<Adjustment>;
29
30
  update(resource: AdjustmentUpdate, params?: QueryParamsRetrieve, options?: ResourcesConfig): Promise<Adjustment>;
30
- delete(id: string | ResourceId, options?: ResourcesConfig): Promise<void>;
31
+ delete(id: string, options?: ResourcesConfig): Promise<void>;
32
+ versions(adjustmentId: string | Adjustment, params?: QueryParamsList, options?: ResourcesConfig): Promise<ListResponse<Version>>;
31
33
  isAdjustment(resource: any): resource is Adjustment;
32
34
  relationship(id: string | ResourceId | null): AdjustmentRel;
33
- type(): AdjustmentType;
35
+ type(): string;
34
36
  }
35
37
  export default Adjustments;
36
- export type { Adjustment, AdjustmentCreate, AdjustmentUpdate, AdjustmentType };
38
+ export { Adjustment, AdjustmentCreate, AdjustmentUpdate };
@@ -1,14 +1,26 @@
1
1
  import { ApiResource } from '../resource';
2
2
  class Adjustments extends ApiResource {
3
+ // static readonly PATH = 'adjustments'
4
+ async list(params, options) {
5
+ return this.resources.list({ type: Adjustments.TYPE }, params, options);
6
+ }
3
7
  async create(resource, params, options) {
4
- return this.resources.create({ ...resource, type: Adjustments.TYPE }, params, options);
8
+ return this.resources.create(Object.assign(Object.assign({}, resource), { type: Adjustments.TYPE }), params, options);
9
+ }
10
+ async retrieve(id, params, options) {
11
+ return this.resources.retrieve({ type: Adjustments.TYPE, id }, params, options);
5
12
  }
6
13
  async update(resource, params, options) {
7
- return this.resources.update({ ...resource, type: Adjustments.TYPE }, params, options);
14
+ return this.resources.update(Object.assign(Object.assign({}, resource), { type: Adjustments.TYPE }), params, options);
8
15
  }
9
16
  async delete(id, options) {
10
- await this.resources.delete((typeof id === 'string') ? { id, type: Adjustments.TYPE } : id, options);
17
+ await this.resources.delete({ type: Adjustments.TYPE, id }, options);
18
+ }
19
+ async versions(adjustmentId, params, options) {
20
+ const _adjustmentId = adjustmentId.id || adjustmentId;
21
+ return this.resources.fetch({ type: 'versions' }, `adjustments/${_adjustmentId}/versions`, params, options);
11
22
  }
23
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/no-explicit-any
12
24
  isAdjustment(resource) {
13
25
  return resource.type && (resource.type === Adjustments.TYPE);
14
26
  }