@shopify/shopify-api 5.0.1 → 5.2.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 (750) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +1 -0
  3. package/dist/auth/oauth/oauth.d.ts +2 -0
  4. package/dist/auth/oauth/oauth.d.ts.map +1 -1
  5. package/dist/auth/oauth/oauth.js +120 -95
  6. package/dist/auth/session/storage/redis.d.ts +1 -0
  7. package/dist/auth/session/storage/redis.d.ts.map +1 -1
  8. package/dist/auth/session/storage/redis.js +3 -0
  9. package/dist/base-types.d.ts +4 -1
  10. package/dist/base-types.d.ts.map +1 -1
  11. package/dist/base-types.js +2 -1
  12. package/dist/billing/check.d.ts +12 -0
  13. package/dist/billing/check.d.ts.map +1 -0
  14. package/dist/billing/check.js +34 -0
  15. package/dist/billing/has_active_payment.d.ts +3 -0
  16. package/dist/billing/has_active_payment.d.ts.map +1 -0
  17. package/dist/billing/has_active_payment.js +91 -0
  18. package/dist/billing/index.d.ts +7 -0
  19. package/dist/billing/index.d.ts.map +1 -0
  20. package/dist/billing/index.js +9 -0
  21. package/dist/billing/is_recurring.d.ts +2 -0
  22. package/dist/billing/is_recurring.d.ts.map +1 -0
  23. package/dist/billing/is_recurring.js +20 -0
  24. package/dist/billing/request_payment.d.ts +3 -0
  25. package/dist/billing/request_payment.d.ts.map +1 -0
  26. package/dist/billing/request_payment.js +134 -0
  27. package/dist/billing/types.d.ts +57 -0
  28. package/dist/billing/types.d.ts.map +1 -0
  29. package/dist/billing/types.js +9 -0
  30. package/dist/clients/graphql/graphql_client.d.ts +1 -1
  31. package/dist/clients/graphql/graphql_client.d.ts.map +1 -1
  32. package/dist/clients/http_client/http_client.d.ts +5 -5
  33. package/dist/clients/http_client/http_client.d.ts.map +1 -1
  34. package/dist/clients/http_client/types.d.ts +2 -2
  35. package/dist/clients/http_client/types.d.ts.map +1 -1
  36. package/dist/clients/rest/rest_client.d.ts +1 -1
  37. package/dist/clients/rest/rest_client.d.ts.map +1 -1
  38. package/dist/clients/rest/rest_client.js +1 -1
  39. package/dist/clients/rest/types.d.ts +1 -1
  40. package/dist/clients/rest/types.d.ts.map +1 -1
  41. package/dist/context.d.ts.map +1 -1
  42. package/dist/context.js +3 -0
  43. package/dist/error.d.ts +7 -0
  44. package/dist/error.d.ts.map +1 -1
  45. package/dist/error.js +13 -1
  46. package/dist/index.d.ts +4 -0
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +2 -0
  49. package/dist/rest-resources/2022-01/abandoned_checkout.d.ts +5 -2
  50. package/dist/rest-resources/2022-01/abandoned_checkout.d.ts.map +1 -1
  51. package/dist/rest-resources/2022-01/abandoned_checkout.js +6 -2
  52. package/dist/rest-resources/2022-01/access_scope.d.ts +3 -0
  53. package/dist/rest-resources/2022-01/access_scope.d.ts.map +1 -1
  54. package/dist/rest-resources/2022-01/access_scope.js +3 -0
  55. package/dist/rest-resources/2022-01/android_pay_key.d.ts +3 -0
  56. package/dist/rest-resources/2022-01/android_pay_key.d.ts.map +1 -1
  57. package/dist/rest-resources/2022-01/android_pay_key.js +3 -0
  58. package/dist/rest-resources/2022-01/apple_pay_certificate.d.ts +3 -0
  59. package/dist/rest-resources/2022-01/apple_pay_certificate.d.ts.map +1 -1
  60. package/dist/rest-resources/2022-01/apple_pay_certificate.js +3 -0
  61. package/dist/rest-resources/2022-01/application_charge.d.ts +3 -0
  62. package/dist/rest-resources/2022-01/application_charge.d.ts.map +1 -1
  63. package/dist/rest-resources/2022-01/application_charge.js +3 -0
  64. package/dist/rest-resources/2022-01/application_credit.d.ts +3 -0
  65. package/dist/rest-resources/2022-01/application_credit.d.ts.map +1 -1
  66. package/dist/rest-resources/2022-01/application_credit.js +3 -0
  67. package/dist/rest-resources/2022-01/article.d.ts +3 -0
  68. package/dist/rest-resources/2022-01/article.d.ts.map +1 -1
  69. package/dist/rest-resources/2022-01/article.js +3 -0
  70. package/dist/rest-resources/2022-01/asset.d.ts +3 -0
  71. package/dist/rest-resources/2022-01/asset.d.ts.map +1 -1
  72. package/dist/rest-resources/2022-01/asset.js +3 -0
  73. package/dist/rest-resources/2022-01/assigned_fulfillment_order.d.ts +3 -0
  74. package/dist/rest-resources/2022-01/assigned_fulfillment_order.d.ts.map +1 -1
  75. package/dist/rest-resources/2022-01/assigned_fulfillment_order.js +3 -0
  76. package/dist/rest-resources/2022-01/balance.d.ts +3 -0
  77. package/dist/rest-resources/2022-01/balance.d.ts.map +1 -1
  78. package/dist/rest-resources/2022-01/balance.js +3 -0
  79. package/dist/rest-resources/2022-01/blog.d.ts +3 -0
  80. package/dist/rest-resources/2022-01/blog.d.ts.map +1 -1
  81. package/dist/rest-resources/2022-01/blog.js +3 -0
  82. package/dist/rest-resources/2022-01/cancellation_request.d.ts +3 -0
  83. package/dist/rest-resources/2022-01/cancellation_request.d.ts.map +1 -1
  84. package/dist/rest-resources/2022-01/cancellation_request.js +3 -0
  85. package/dist/rest-resources/2022-01/carrier_service.d.ts +3 -0
  86. package/dist/rest-resources/2022-01/carrier_service.d.ts.map +1 -1
  87. package/dist/rest-resources/2022-01/carrier_service.js +3 -0
  88. package/dist/rest-resources/2022-01/checkout.d.ts +3 -0
  89. package/dist/rest-resources/2022-01/checkout.d.ts.map +1 -1
  90. package/dist/rest-resources/2022-01/checkout.js +3 -0
  91. package/dist/rest-resources/2022-01/collect.d.ts +3 -0
  92. package/dist/rest-resources/2022-01/collect.d.ts.map +1 -1
  93. package/dist/rest-resources/2022-01/collect.js +3 -0
  94. package/dist/rest-resources/2022-01/collection.d.ts +3 -0
  95. package/dist/rest-resources/2022-01/collection.d.ts.map +1 -1
  96. package/dist/rest-resources/2022-01/collection.js +3 -0
  97. package/dist/rest-resources/2022-01/collection_listing.d.ts +3 -0
  98. package/dist/rest-resources/2022-01/collection_listing.d.ts.map +1 -1
  99. package/dist/rest-resources/2022-01/collection_listing.js +3 -0
  100. package/dist/rest-resources/2022-01/comment.d.ts +3 -0
  101. package/dist/rest-resources/2022-01/comment.d.ts.map +1 -1
  102. package/dist/rest-resources/2022-01/comment.js +3 -0
  103. package/dist/rest-resources/2022-01/country.d.ts +3 -0
  104. package/dist/rest-resources/2022-01/country.d.ts.map +1 -1
  105. package/dist/rest-resources/2022-01/country.js +3 -0
  106. package/dist/rest-resources/2022-01/currency.d.ts +3 -0
  107. package/dist/rest-resources/2022-01/currency.d.ts.map +1 -1
  108. package/dist/rest-resources/2022-01/currency.js +3 -0
  109. package/dist/rest-resources/2022-01/custom_collection.d.ts +3 -0
  110. package/dist/rest-resources/2022-01/custom_collection.d.ts.map +1 -1
  111. package/dist/rest-resources/2022-01/custom_collection.js +3 -0
  112. package/dist/rest-resources/2022-01/customer.d.ts +10 -0
  113. package/dist/rest-resources/2022-01/customer.d.ts.map +1 -1
  114. package/dist/rest-resources/2022-01/customer.js +24 -0
  115. package/dist/rest-resources/2022-01/customer_address.d.ts +3 -0
  116. package/dist/rest-resources/2022-01/customer_address.d.ts.map +1 -1
  117. package/dist/rest-resources/2022-01/customer_address.js +3 -0
  118. package/dist/rest-resources/2022-01/customer_saved_search.d.ts +3 -0
  119. package/dist/rest-resources/2022-01/customer_saved_search.d.ts.map +1 -1
  120. package/dist/rest-resources/2022-01/customer_saved_search.js +3 -0
  121. package/dist/rest-resources/2022-01/deprecated_api_call.d.ts +3 -0
  122. package/dist/rest-resources/2022-01/deprecated_api_call.d.ts.map +1 -1
  123. package/dist/rest-resources/2022-01/deprecated_api_call.js +3 -0
  124. package/dist/rest-resources/2022-01/discount_code.d.ts +3 -0
  125. package/dist/rest-resources/2022-01/discount_code.d.ts.map +1 -1
  126. package/dist/rest-resources/2022-01/discount_code.js +3 -0
  127. package/dist/rest-resources/2022-01/dispute.d.ts +3 -0
  128. package/dist/rest-resources/2022-01/dispute.d.ts.map +1 -1
  129. package/dist/rest-resources/2022-01/dispute.js +3 -0
  130. package/dist/rest-resources/2022-01/draft_order.d.ts +5 -1
  131. package/dist/rest-resources/2022-01/draft_order.d.ts.map +1 -1
  132. package/dist/rest-resources/2022-01/draft_order.js +8 -5
  133. package/dist/rest-resources/2022-01/event.d.ts +3 -0
  134. package/dist/rest-resources/2022-01/event.d.ts.map +1 -1
  135. package/dist/rest-resources/2022-01/event.js +3 -0
  136. package/dist/rest-resources/2022-01/fulfillment.d.ts +24 -0
  137. package/dist/rest-resources/2022-01/fulfillment.d.ts.map +1 -1
  138. package/dist/rest-resources/2022-01/fulfillment.js +77 -1
  139. package/dist/rest-resources/2022-01/fulfillment_event.d.ts +3 -0
  140. package/dist/rest-resources/2022-01/fulfillment_event.d.ts.map +1 -1
  141. package/dist/rest-resources/2022-01/fulfillment_event.js +3 -0
  142. package/dist/rest-resources/2022-01/fulfillment_order.d.ts +3 -0
  143. package/dist/rest-resources/2022-01/fulfillment_order.d.ts.map +1 -1
  144. package/dist/rest-resources/2022-01/fulfillment_order.js +3 -0
  145. package/dist/rest-resources/2022-01/fulfillment_request.d.ts +6 -1
  146. package/dist/rest-resources/2022-01/fulfillment_request.d.ts.map +1 -1
  147. package/dist/rest-resources/2022-01/fulfillment_request.js +8 -5
  148. package/dist/rest-resources/2022-01/fulfillment_service.d.ts +3 -0
  149. package/dist/rest-resources/2022-01/fulfillment_service.d.ts.map +1 -1
  150. package/dist/rest-resources/2022-01/fulfillment_service.js +3 -0
  151. package/dist/rest-resources/2022-01/gift_card.d.ts +8 -1
  152. package/dist/rest-resources/2022-01/gift_card.d.ts.map +1 -1
  153. package/dist/rest-resources/2022-01/gift_card.js +8 -5
  154. package/dist/rest-resources/2022-01/gift_card_adjustment.d.ts +3 -0
  155. package/dist/rest-resources/2022-01/gift_card_adjustment.d.ts.map +1 -1
  156. package/dist/rest-resources/2022-01/gift_card_adjustment.js +3 -0
  157. package/dist/rest-resources/2022-01/image.d.ts +3 -0
  158. package/dist/rest-resources/2022-01/image.d.ts.map +1 -1
  159. package/dist/rest-resources/2022-01/image.js +3 -0
  160. package/dist/rest-resources/2022-01/inventory_item.d.ts +3 -0
  161. package/dist/rest-resources/2022-01/inventory_item.d.ts.map +1 -1
  162. package/dist/rest-resources/2022-01/inventory_item.js +3 -0
  163. package/dist/rest-resources/2022-01/inventory_level.d.ts +3 -0
  164. package/dist/rest-resources/2022-01/inventory_level.d.ts.map +1 -1
  165. package/dist/rest-resources/2022-01/inventory_level.js +3 -0
  166. package/dist/rest-resources/2022-01/location.d.ts +3 -0
  167. package/dist/rest-resources/2022-01/location.d.ts.map +1 -1
  168. package/dist/rest-resources/2022-01/location.js +3 -0
  169. package/dist/rest-resources/2022-01/locations_for_move.d.ts +3 -0
  170. package/dist/rest-resources/2022-01/locations_for_move.d.ts.map +1 -1
  171. package/dist/rest-resources/2022-01/locations_for_move.js +3 -0
  172. package/dist/rest-resources/2022-01/marketing_event.d.ts +3 -0
  173. package/dist/rest-resources/2022-01/marketing_event.d.ts.map +1 -1
  174. package/dist/rest-resources/2022-01/marketing_event.js +3 -0
  175. package/dist/rest-resources/2022-01/metafield.d.ts +7 -3
  176. package/dist/rest-resources/2022-01/metafield.d.ts.map +1 -1
  177. package/dist/rest-resources/2022-01/metafield.js +16 -8
  178. package/dist/rest-resources/2022-01/mobile_platform_application.d.ts +3 -0
  179. package/dist/rest-resources/2022-01/mobile_platform_application.d.ts.map +1 -1
  180. package/dist/rest-resources/2022-01/mobile_platform_application.js +3 -0
  181. package/dist/rest-resources/2022-01/order.d.ts +3 -0
  182. package/dist/rest-resources/2022-01/order.d.ts.map +1 -1
  183. package/dist/rest-resources/2022-01/order.js +3 -0
  184. package/dist/rest-resources/2022-01/order_risk.d.ts +3 -0
  185. package/dist/rest-resources/2022-01/order_risk.d.ts.map +1 -1
  186. package/dist/rest-resources/2022-01/order_risk.js +3 -0
  187. package/dist/rest-resources/2022-01/page.d.ts +3 -0
  188. package/dist/rest-resources/2022-01/page.d.ts.map +1 -1
  189. package/dist/rest-resources/2022-01/page.js +3 -0
  190. package/dist/rest-resources/2022-01/payment.d.ts +3 -0
  191. package/dist/rest-resources/2022-01/payment.d.ts.map +1 -1
  192. package/dist/rest-resources/2022-01/payment.js +3 -0
  193. package/dist/rest-resources/2022-01/payment_gateway.d.ts +3 -0
  194. package/dist/rest-resources/2022-01/payment_gateway.d.ts.map +1 -1
  195. package/dist/rest-resources/2022-01/payment_gateway.js +3 -0
  196. package/dist/rest-resources/2022-01/payment_transaction.d.ts +3 -0
  197. package/dist/rest-resources/2022-01/payment_transaction.d.ts.map +1 -1
  198. package/dist/rest-resources/2022-01/payment_transaction.js +3 -0
  199. package/dist/rest-resources/2022-01/payout.d.ts +3 -0
  200. package/dist/rest-resources/2022-01/payout.d.ts.map +1 -1
  201. package/dist/rest-resources/2022-01/payout.js +3 -0
  202. package/dist/rest-resources/2022-01/policy.d.ts +3 -0
  203. package/dist/rest-resources/2022-01/policy.d.ts.map +1 -1
  204. package/dist/rest-resources/2022-01/policy.js +3 -0
  205. package/dist/rest-resources/2022-01/price_rule.d.ts +3 -0
  206. package/dist/rest-resources/2022-01/price_rule.d.ts.map +1 -1
  207. package/dist/rest-resources/2022-01/price_rule.js +3 -0
  208. package/dist/rest-resources/2022-01/product.d.ts +3 -0
  209. package/dist/rest-resources/2022-01/product.d.ts.map +1 -1
  210. package/dist/rest-resources/2022-01/product.js +3 -0
  211. package/dist/rest-resources/2022-01/product_listing.d.ts +3 -0
  212. package/dist/rest-resources/2022-01/product_listing.d.ts.map +1 -1
  213. package/dist/rest-resources/2022-01/product_listing.js +3 -0
  214. package/dist/rest-resources/2022-01/product_resource_feedback.d.ts +3 -0
  215. package/dist/rest-resources/2022-01/product_resource_feedback.d.ts.map +1 -1
  216. package/dist/rest-resources/2022-01/product_resource_feedback.js +3 -0
  217. package/dist/rest-resources/2022-01/province.d.ts +3 -0
  218. package/dist/rest-resources/2022-01/province.d.ts.map +1 -1
  219. package/dist/rest-resources/2022-01/province.js +3 -0
  220. package/dist/rest-resources/2022-01/recurring_application_charge.d.ts +3 -0
  221. package/dist/rest-resources/2022-01/recurring_application_charge.d.ts.map +1 -1
  222. package/dist/rest-resources/2022-01/recurring_application_charge.js +3 -0
  223. package/dist/rest-resources/2022-01/redirect.d.ts +3 -0
  224. package/dist/rest-resources/2022-01/redirect.d.ts.map +1 -1
  225. package/dist/rest-resources/2022-01/redirect.js +3 -0
  226. package/dist/rest-resources/2022-01/refund.d.ts +3 -0
  227. package/dist/rest-resources/2022-01/refund.d.ts.map +1 -1
  228. package/dist/rest-resources/2022-01/refund.js +3 -0
  229. package/dist/rest-resources/2022-01/report.d.ts +3 -0
  230. package/dist/rest-resources/2022-01/report.d.ts.map +1 -1
  231. package/dist/rest-resources/2022-01/report.js +3 -0
  232. package/dist/rest-resources/2022-01/resource_feedback.d.ts +3 -0
  233. package/dist/rest-resources/2022-01/resource_feedback.d.ts.map +1 -1
  234. package/dist/rest-resources/2022-01/resource_feedback.js +3 -0
  235. package/dist/rest-resources/2022-01/script_tag.d.ts +3 -0
  236. package/dist/rest-resources/2022-01/script_tag.d.ts.map +1 -1
  237. package/dist/rest-resources/2022-01/script_tag.js +3 -0
  238. package/dist/rest-resources/2022-01/shipping_zone.d.ts +3 -0
  239. package/dist/rest-resources/2022-01/shipping_zone.d.ts.map +1 -1
  240. package/dist/rest-resources/2022-01/shipping_zone.js +3 -0
  241. package/dist/rest-resources/2022-01/shop.d.ts +3 -0
  242. package/dist/rest-resources/2022-01/shop.d.ts.map +1 -1
  243. package/dist/rest-resources/2022-01/shop.js +3 -0
  244. package/dist/rest-resources/2022-01/smart_collection.d.ts +3 -0
  245. package/dist/rest-resources/2022-01/smart_collection.d.ts.map +1 -1
  246. package/dist/rest-resources/2022-01/smart_collection.js +3 -0
  247. package/dist/rest-resources/2022-01/storefront_access_token.d.ts +3 -0
  248. package/dist/rest-resources/2022-01/storefront_access_token.d.ts.map +1 -1
  249. package/dist/rest-resources/2022-01/storefront_access_token.js +3 -0
  250. package/dist/rest-resources/2022-01/tender_transaction.d.ts +3 -0
  251. package/dist/rest-resources/2022-01/tender_transaction.d.ts.map +1 -1
  252. package/dist/rest-resources/2022-01/tender_transaction.js +3 -0
  253. package/dist/rest-resources/2022-01/theme.d.ts +3 -0
  254. package/dist/rest-resources/2022-01/theme.d.ts.map +1 -1
  255. package/dist/rest-resources/2022-01/theme.js +3 -0
  256. package/dist/rest-resources/2022-01/transaction.d.ts +3 -0
  257. package/dist/rest-resources/2022-01/transaction.d.ts.map +1 -1
  258. package/dist/rest-resources/2022-01/transaction.js +3 -0
  259. package/dist/rest-resources/2022-01/usage_charge.d.ts +3 -0
  260. package/dist/rest-resources/2022-01/usage_charge.d.ts.map +1 -1
  261. package/dist/rest-resources/2022-01/usage_charge.js +3 -0
  262. package/dist/rest-resources/2022-01/user.d.ts +3 -0
  263. package/dist/rest-resources/2022-01/user.d.ts.map +1 -1
  264. package/dist/rest-resources/2022-01/user.js +3 -0
  265. package/dist/rest-resources/2022-01/variant.d.ts +3 -0
  266. package/dist/rest-resources/2022-01/variant.d.ts.map +1 -1
  267. package/dist/rest-resources/2022-01/variant.js +3 -0
  268. package/dist/rest-resources/2022-01/webhook.d.ts +3 -0
  269. package/dist/rest-resources/2022-01/webhook.d.ts.map +1 -1
  270. package/dist/rest-resources/2022-01/webhook.js +3 -0
  271. package/dist/rest-resources/2022-04/abandoned_checkout.d.ts +5 -2
  272. package/dist/rest-resources/2022-04/abandoned_checkout.d.ts.map +1 -1
  273. package/dist/rest-resources/2022-04/abandoned_checkout.js +6 -2
  274. package/dist/rest-resources/2022-04/access_scope.d.ts +3 -0
  275. package/dist/rest-resources/2022-04/access_scope.d.ts.map +1 -1
  276. package/dist/rest-resources/2022-04/access_scope.js +3 -0
  277. package/dist/rest-resources/2022-04/android_pay_key.d.ts +3 -0
  278. package/dist/rest-resources/2022-04/android_pay_key.d.ts.map +1 -1
  279. package/dist/rest-resources/2022-04/android_pay_key.js +3 -0
  280. package/dist/rest-resources/2022-04/apple_pay_certificate.d.ts +3 -0
  281. package/dist/rest-resources/2022-04/apple_pay_certificate.d.ts.map +1 -1
  282. package/dist/rest-resources/2022-04/apple_pay_certificate.js +3 -0
  283. package/dist/rest-resources/2022-04/application_charge.d.ts +3 -0
  284. package/dist/rest-resources/2022-04/application_charge.d.ts.map +1 -1
  285. package/dist/rest-resources/2022-04/application_charge.js +3 -0
  286. package/dist/rest-resources/2022-04/application_credit.d.ts +3 -0
  287. package/dist/rest-resources/2022-04/application_credit.d.ts.map +1 -1
  288. package/dist/rest-resources/2022-04/application_credit.js +3 -0
  289. package/dist/rest-resources/2022-04/article.d.ts +3 -0
  290. package/dist/rest-resources/2022-04/article.d.ts.map +1 -1
  291. package/dist/rest-resources/2022-04/article.js +3 -0
  292. package/dist/rest-resources/2022-04/asset.d.ts +3 -0
  293. package/dist/rest-resources/2022-04/asset.d.ts.map +1 -1
  294. package/dist/rest-resources/2022-04/asset.js +3 -0
  295. package/dist/rest-resources/2022-04/assigned_fulfillment_order.d.ts +3 -0
  296. package/dist/rest-resources/2022-04/assigned_fulfillment_order.d.ts.map +1 -1
  297. package/dist/rest-resources/2022-04/assigned_fulfillment_order.js +3 -0
  298. package/dist/rest-resources/2022-04/balance.d.ts +3 -0
  299. package/dist/rest-resources/2022-04/balance.d.ts.map +1 -1
  300. package/dist/rest-resources/2022-04/balance.js +3 -0
  301. package/dist/rest-resources/2022-04/blog.d.ts +3 -0
  302. package/dist/rest-resources/2022-04/blog.d.ts.map +1 -1
  303. package/dist/rest-resources/2022-04/blog.js +3 -0
  304. package/dist/rest-resources/2022-04/cancellation_request.d.ts +3 -0
  305. package/dist/rest-resources/2022-04/cancellation_request.d.ts.map +1 -1
  306. package/dist/rest-resources/2022-04/cancellation_request.js +3 -0
  307. package/dist/rest-resources/2022-04/carrier_service.d.ts +3 -0
  308. package/dist/rest-resources/2022-04/carrier_service.d.ts.map +1 -1
  309. package/dist/rest-resources/2022-04/carrier_service.js +3 -0
  310. package/dist/rest-resources/2022-04/checkout.d.ts +3 -0
  311. package/dist/rest-resources/2022-04/checkout.d.ts.map +1 -1
  312. package/dist/rest-resources/2022-04/checkout.js +3 -0
  313. package/dist/rest-resources/2022-04/collect.d.ts +3 -0
  314. package/dist/rest-resources/2022-04/collect.d.ts.map +1 -1
  315. package/dist/rest-resources/2022-04/collect.js +3 -0
  316. package/dist/rest-resources/2022-04/collection.d.ts +3 -0
  317. package/dist/rest-resources/2022-04/collection.d.ts.map +1 -1
  318. package/dist/rest-resources/2022-04/collection.js +3 -0
  319. package/dist/rest-resources/2022-04/collection_listing.d.ts +3 -0
  320. package/dist/rest-resources/2022-04/collection_listing.d.ts.map +1 -1
  321. package/dist/rest-resources/2022-04/collection_listing.js +3 -0
  322. package/dist/rest-resources/2022-04/comment.d.ts +3 -0
  323. package/dist/rest-resources/2022-04/comment.d.ts.map +1 -1
  324. package/dist/rest-resources/2022-04/comment.js +3 -0
  325. package/dist/rest-resources/2022-04/country.d.ts +3 -0
  326. package/dist/rest-resources/2022-04/country.d.ts.map +1 -1
  327. package/dist/rest-resources/2022-04/country.js +3 -0
  328. package/dist/rest-resources/2022-04/currency.d.ts +3 -0
  329. package/dist/rest-resources/2022-04/currency.d.ts.map +1 -1
  330. package/dist/rest-resources/2022-04/currency.js +3 -0
  331. package/dist/rest-resources/2022-04/custom_collection.d.ts +3 -0
  332. package/dist/rest-resources/2022-04/custom_collection.d.ts.map +1 -1
  333. package/dist/rest-resources/2022-04/custom_collection.js +3 -0
  334. package/dist/rest-resources/2022-04/customer.d.ts +10 -0
  335. package/dist/rest-resources/2022-04/customer.d.ts.map +1 -1
  336. package/dist/rest-resources/2022-04/customer.js +24 -0
  337. package/dist/rest-resources/2022-04/customer_address.d.ts +3 -0
  338. package/dist/rest-resources/2022-04/customer_address.d.ts.map +1 -1
  339. package/dist/rest-resources/2022-04/customer_address.js +3 -0
  340. package/dist/rest-resources/2022-04/customer_saved_search.d.ts +3 -0
  341. package/dist/rest-resources/2022-04/customer_saved_search.d.ts.map +1 -1
  342. package/dist/rest-resources/2022-04/customer_saved_search.js +3 -0
  343. package/dist/rest-resources/2022-04/deprecated_api_call.d.ts +3 -0
  344. package/dist/rest-resources/2022-04/deprecated_api_call.d.ts.map +1 -1
  345. package/dist/rest-resources/2022-04/deprecated_api_call.js +3 -0
  346. package/dist/rest-resources/2022-04/discount_code.d.ts +3 -0
  347. package/dist/rest-resources/2022-04/discount_code.d.ts.map +1 -1
  348. package/dist/rest-resources/2022-04/discount_code.js +3 -0
  349. package/dist/rest-resources/2022-04/dispute.d.ts +3 -0
  350. package/dist/rest-resources/2022-04/dispute.d.ts.map +1 -1
  351. package/dist/rest-resources/2022-04/dispute.js +3 -0
  352. package/dist/rest-resources/2022-04/draft_order.d.ts +5 -1
  353. package/dist/rest-resources/2022-04/draft_order.d.ts.map +1 -1
  354. package/dist/rest-resources/2022-04/draft_order.js +8 -5
  355. package/dist/rest-resources/2022-04/event.d.ts +3 -0
  356. package/dist/rest-resources/2022-04/event.d.ts.map +1 -1
  357. package/dist/rest-resources/2022-04/event.js +3 -0
  358. package/dist/rest-resources/2022-04/fulfillment.d.ts +24 -0
  359. package/dist/rest-resources/2022-04/fulfillment.d.ts.map +1 -1
  360. package/dist/rest-resources/2022-04/fulfillment.js +77 -1
  361. package/dist/rest-resources/2022-04/fulfillment_event.d.ts +3 -0
  362. package/dist/rest-resources/2022-04/fulfillment_event.d.ts.map +1 -1
  363. package/dist/rest-resources/2022-04/fulfillment_event.js +3 -0
  364. package/dist/rest-resources/2022-04/fulfillment_order.d.ts +4 -0
  365. package/dist/rest-resources/2022-04/fulfillment_order.d.ts.map +1 -1
  366. package/dist/rest-resources/2022-04/fulfillment_order.js +3 -0
  367. package/dist/rest-resources/2022-04/fulfillment_request.d.ts +6 -1
  368. package/dist/rest-resources/2022-04/fulfillment_request.d.ts.map +1 -1
  369. package/dist/rest-resources/2022-04/fulfillment_request.js +8 -5
  370. package/dist/rest-resources/2022-04/fulfillment_service.d.ts +3 -0
  371. package/dist/rest-resources/2022-04/fulfillment_service.d.ts.map +1 -1
  372. package/dist/rest-resources/2022-04/fulfillment_service.js +3 -0
  373. package/dist/rest-resources/2022-04/gift_card.d.ts +8 -1
  374. package/dist/rest-resources/2022-04/gift_card.d.ts.map +1 -1
  375. package/dist/rest-resources/2022-04/gift_card.js +8 -5
  376. package/dist/rest-resources/2022-04/gift_card_adjustment.d.ts +3 -0
  377. package/dist/rest-resources/2022-04/gift_card_adjustment.d.ts.map +1 -1
  378. package/dist/rest-resources/2022-04/gift_card_adjustment.js +3 -0
  379. package/dist/rest-resources/2022-04/image.d.ts +3 -0
  380. package/dist/rest-resources/2022-04/image.d.ts.map +1 -1
  381. package/dist/rest-resources/2022-04/image.js +3 -0
  382. package/dist/rest-resources/2022-04/inventory_item.d.ts +3 -0
  383. package/dist/rest-resources/2022-04/inventory_item.d.ts.map +1 -1
  384. package/dist/rest-resources/2022-04/inventory_item.js +3 -0
  385. package/dist/rest-resources/2022-04/inventory_level.d.ts +3 -0
  386. package/dist/rest-resources/2022-04/inventory_level.d.ts.map +1 -1
  387. package/dist/rest-resources/2022-04/inventory_level.js +3 -0
  388. package/dist/rest-resources/2022-04/location.d.ts +3 -0
  389. package/dist/rest-resources/2022-04/location.d.ts.map +1 -1
  390. package/dist/rest-resources/2022-04/location.js +3 -0
  391. package/dist/rest-resources/2022-04/locations_for_move.d.ts +3 -0
  392. package/dist/rest-resources/2022-04/locations_for_move.d.ts.map +1 -1
  393. package/dist/rest-resources/2022-04/locations_for_move.js +3 -0
  394. package/dist/rest-resources/2022-04/marketing_event.d.ts +3 -0
  395. package/dist/rest-resources/2022-04/marketing_event.d.ts.map +1 -1
  396. package/dist/rest-resources/2022-04/marketing_event.js +3 -0
  397. package/dist/rest-resources/2022-04/metafield.d.ts +6 -4
  398. package/dist/rest-resources/2022-04/metafield.d.ts.map +1 -1
  399. package/dist/rest-resources/2022-04/metafield.js +17 -11
  400. package/dist/rest-resources/2022-04/mobile_platform_application.d.ts +3 -0
  401. package/dist/rest-resources/2022-04/mobile_platform_application.d.ts.map +1 -1
  402. package/dist/rest-resources/2022-04/mobile_platform_application.js +3 -0
  403. package/dist/rest-resources/2022-04/order.d.ts +3 -0
  404. package/dist/rest-resources/2022-04/order.d.ts.map +1 -1
  405. package/dist/rest-resources/2022-04/order.js +3 -0
  406. package/dist/rest-resources/2022-04/order_risk.d.ts +3 -0
  407. package/dist/rest-resources/2022-04/order_risk.d.ts.map +1 -1
  408. package/dist/rest-resources/2022-04/order_risk.js +3 -0
  409. package/dist/rest-resources/2022-04/page.d.ts +3 -0
  410. package/dist/rest-resources/2022-04/page.d.ts.map +1 -1
  411. package/dist/rest-resources/2022-04/page.js +3 -0
  412. package/dist/rest-resources/2022-04/payment.d.ts +3 -0
  413. package/dist/rest-resources/2022-04/payment.d.ts.map +1 -1
  414. package/dist/rest-resources/2022-04/payment.js +3 -0
  415. package/dist/rest-resources/2022-04/payment_gateway.d.ts +3 -0
  416. package/dist/rest-resources/2022-04/payment_gateway.d.ts.map +1 -1
  417. package/dist/rest-resources/2022-04/payment_gateway.js +3 -0
  418. package/dist/rest-resources/2022-04/payment_transaction.d.ts +3 -0
  419. package/dist/rest-resources/2022-04/payment_transaction.d.ts.map +1 -1
  420. package/dist/rest-resources/2022-04/payment_transaction.js +3 -0
  421. package/dist/rest-resources/2022-04/payout.d.ts +3 -0
  422. package/dist/rest-resources/2022-04/payout.d.ts.map +1 -1
  423. package/dist/rest-resources/2022-04/payout.js +3 -0
  424. package/dist/rest-resources/2022-04/policy.d.ts +3 -0
  425. package/dist/rest-resources/2022-04/policy.d.ts.map +1 -1
  426. package/dist/rest-resources/2022-04/policy.js +3 -0
  427. package/dist/rest-resources/2022-04/price_rule.d.ts +3 -0
  428. package/dist/rest-resources/2022-04/price_rule.d.ts.map +1 -1
  429. package/dist/rest-resources/2022-04/price_rule.js +3 -0
  430. package/dist/rest-resources/2022-04/product.d.ts +3 -0
  431. package/dist/rest-resources/2022-04/product.d.ts.map +1 -1
  432. package/dist/rest-resources/2022-04/product.js +3 -0
  433. package/dist/rest-resources/2022-04/product_listing.d.ts +3 -0
  434. package/dist/rest-resources/2022-04/product_listing.d.ts.map +1 -1
  435. package/dist/rest-resources/2022-04/product_listing.js +3 -0
  436. package/dist/rest-resources/2022-04/product_resource_feedback.d.ts +3 -0
  437. package/dist/rest-resources/2022-04/product_resource_feedback.d.ts.map +1 -1
  438. package/dist/rest-resources/2022-04/product_resource_feedback.js +3 -0
  439. package/dist/rest-resources/2022-04/province.d.ts +3 -0
  440. package/dist/rest-resources/2022-04/province.d.ts.map +1 -1
  441. package/dist/rest-resources/2022-04/province.js +3 -0
  442. package/dist/rest-resources/2022-04/recurring_application_charge.d.ts +3 -0
  443. package/dist/rest-resources/2022-04/recurring_application_charge.d.ts.map +1 -1
  444. package/dist/rest-resources/2022-04/recurring_application_charge.js +3 -0
  445. package/dist/rest-resources/2022-04/redirect.d.ts +3 -0
  446. package/dist/rest-resources/2022-04/redirect.d.ts.map +1 -1
  447. package/dist/rest-resources/2022-04/redirect.js +3 -0
  448. package/dist/rest-resources/2022-04/refund.d.ts +3 -0
  449. package/dist/rest-resources/2022-04/refund.d.ts.map +1 -1
  450. package/dist/rest-resources/2022-04/refund.js +3 -0
  451. package/dist/rest-resources/2022-04/report.d.ts +3 -0
  452. package/dist/rest-resources/2022-04/report.d.ts.map +1 -1
  453. package/dist/rest-resources/2022-04/report.js +3 -0
  454. package/dist/rest-resources/2022-04/resource_feedback.d.ts +3 -0
  455. package/dist/rest-resources/2022-04/resource_feedback.d.ts.map +1 -1
  456. package/dist/rest-resources/2022-04/resource_feedback.js +3 -0
  457. package/dist/rest-resources/2022-04/script_tag.d.ts +3 -0
  458. package/dist/rest-resources/2022-04/script_tag.d.ts.map +1 -1
  459. package/dist/rest-resources/2022-04/script_tag.js +3 -0
  460. package/dist/rest-resources/2022-04/shipping_zone.d.ts +3 -0
  461. package/dist/rest-resources/2022-04/shipping_zone.d.ts.map +1 -1
  462. package/dist/rest-resources/2022-04/shipping_zone.js +3 -0
  463. package/dist/rest-resources/2022-04/shop.d.ts +3 -0
  464. package/dist/rest-resources/2022-04/shop.d.ts.map +1 -1
  465. package/dist/rest-resources/2022-04/shop.js +3 -0
  466. package/dist/rest-resources/2022-04/smart_collection.d.ts +3 -0
  467. package/dist/rest-resources/2022-04/smart_collection.d.ts.map +1 -1
  468. package/dist/rest-resources/2022-04/smart_collection.js +3 -0
  469. package/dist/rest-resources/2022-04/storefront_access_token.d.ts +3 -0
  470. package/dist/rest-resources/2022-04/storefront_access_token.d.ts.map +1 -1
  471. package/dist/rest-resources/2022-04/storefront_access_token.js +3 -0
  472. package/dist/rest-resources/2022-04/tender_transaction.d.ts +3 -0
  473. package/dist/rest-resources/2022-04/tender_transaction.d.ts.map +1 -1
  474. package/dist/rest-resources/2022-04/tender_transaction.js +3 -0
  475. package/dist/rest-resources/2022-04/theme.d.ts +3 -0
  476. package/dist/rest-resources/2022-04/theme.d.ts.map +1 -1
  477. package/dist/rest-resources/2022-04/theme.js +3 -0
  478. package/dist/rest-resources/2022-04/transaction.d.ts +3 -0
  479. package/dist/rest-resources/2022-04/transaction.d.ts.map +1 -1
  480. package/dist/rest-resources/2022-04/transaction.js +3 -0
  481. package/dist/rest-resources/2022-04/usage_charge.d.ts +3 -0
  482. package/dist/rest-resources/2022-04/usage_charge.d.ts.map +1 -1
  483. package/dist/rest-resources/2022-04/usage_charge.js +3 -0
  484. package/dist/rest-resources/2022-04/user.d.ts +3 -0
  485. package/dist/rest-resources/2022-04/user.d.ts.map +1 -1
  486. package/dist/rest-resources/2022-04/user.js +3 -0
  487. package/dist/rest-resources/2022-04/variant.d.ts +3 -0
  488. package/dist/rest-resources/2022-04/variant.d.ts.map +1 -1
  489. package/dist/rest-resources/2022-04/variant.js +3 -0
  490. package/dist/rest-resources/2022-04/webhook.d.ts +3 -0
  491. package/dist/rest-resources/2022-04/webhook.d.ts.map +1 -1
  492. package/dist/rest-resources/2022-04/webhook.js +3 -0
  493. package/dist/rest-resources/2022-07/abandoned_checkout.d.ts +2 -2
  494. package/dist/rest-resources/2022-07/abandoned_checkout.d.ts.map +1 -1
  495. package/dist/rest-resources/2022-07/abandoned_checkout.js +3 -2
  496. package/dist/rest-resources/2022-07/customer.d.ts +5 -0
  497. package/dist/rest-resources/2022-07/customer.d.ts.map +1 -1
  498. package/dist/rest-resources/2022-07/customer.js +21 -0
  499. package/dist/rest-resources/2022-07/dispute_evidence.d.ts +1 -1
  500. package/dist/rest-resources/2022-07/dispute_evidence.d.ts.map +1 -1
  501. package/dist/rest-resources/2022-07/gift_card.d.ts +5 -1
  502. package/dist/rest-resources/2022-07/gift_card.d.ts.map +1 -1
  503. package/dist/rest-resources/2022-07/gift_card.js +5 -5
  504. package/dist/rest-resources/2022-07/metafield.d.ts +3 -4
  505. package/dist/rest-resources/2022-07/metafield.d.ts.map +1 -1
  506. package/dist/rest-resources/2022-07/metafield.js +14 -11
  507. package/dist/rest-resources/2022-10/abandoned_checkout.d.ts +90 -0
  508. package/dist/rest-resources/2022-10/abandoned_checkout.d.ts.map +1 -0
  509. package/dist/rest-resources/2022-10/abandoned_checkout.js +56 -0
  510. package/dist/rest-resources/2022-10/access_scope.d.ts +30 -0
  511. package/dist/rest-resources/2022-10/access_scope.d.ts.map +1 -0
  512. package/dist/rest-resources/2022-10/access_scope.js +44 -0
  513. package/dist/rest-resources/2022-10/android_pay_key.d.ts +32 -0
  514. package/dist/rest-resources/2022-10/android_pay_key.d.ts.map +1 -0
  515. package/dist/rest-resources/2022-10/android_pay_key.js +65 -0
  516. package/dist/rest-resources/2022-10/apple_pay_certificate.d.ts +39 -0
  517. package/dist/rest-resources/2022-10/apple_pay_certificate.d.ts.map +1 -0
  518. package/dist/rest-resources/2022-10/apple_pay_certificate.js +89 -0
  519. package/dist/rest-resources/2022-10/application_charge.d.ts +42 -0
  520. package/dist/rest-resources/2022-10/application_charge.d.ts.map +1 -0
  521. package/dist/rest-resources/2022-10/application_charge.js +63 -0
  522. package/dist/rest-resources/2022-10/application_credit.d.ts +36 -0
  523. package/dist/rest-resources/2022-10/application_credit.d.ts.map +1 -0
  524. package/dist/rest-resources/2022-10/application_credit.js +63 -0
  525. package/dist/rest-resources/2022-10/article.d.ts +99 -0
  526. package/dist/rest-resources/2022-10/article.d.ts.map +1 -0
  527. package/dist/rest-resources/2022-10/article.js +158 -0
  528. package/dist/rest-resources/2022-10/asset.d.ts +49 -0
  529. package/dist/rest-resources/2022-10/asset.d.ts.map +1 -0
  530. package/dist/rest-resources/2022-10/asset.js +67 -0
  531. package/dist/rest-resources/2022-10/assigned_fulfillment_order.d.ts +39 -0
  532. package/dist/rest-resources/2022-10/assigned_fulfillment_order.d.ts.map +1 -0
  533. package/dist/rest-resources/2022-10/assigned_fulfillment_order.js +43 -0
  534. package/dist/rest-resources/2022-10/balance.d.ts +25 -0
  535. package/dist/rest-resources/2022-10/balance.d.ts.map +1 -0
  536. package/dist/rest-resources/2022-10/balance.js +43 -0
  537. package/dist/rest-resources/2022-10/blog.d.ts +60 -0
  538. package/dist/rest-resources/2022-10/blog.d.ts.map +1 -0
  539. package/dist/rest-resources/2022-10/blog.js +111 -0
  540. package/dist/rest-resources/2022-10/cancellation_request.d.ts +36 -0
  541. package/dist/rest-resources/2022-10/cancellation_request.d.ts.map +1 -0
  542. package/dist/rest-resources/2022-10/cancellation_request.js +71 -0
  543. package/dist/rest-resources/2022-10/carrier_service.d.ts +42 -0
  544. package/dist/rest-resources/2022-10/carrier_service.d.ts.map +1 -0
  545. package/dist/rest-resources/2022-10/carrier_service.js +85 -0
  546. package/dist/rest-resources/2022-10/checkout.d.ts +95 -0
  547. package/dist/rest-resources/2022-10/checkout.d.ts.map +1 -0
  548. package/dist/rest-resources/2022-10/checkout.js +100 -0
  549. package/dist/rest-resources/2022-10/collect.d.ts +51 -0
  550. package/dist/rest-resources/2022-10/collect.d.ts.map +1 -0
  551. package/dist/rest-resources/2022-10/collect.js +107 -0
  552. package/dist/rest-resources/2022-10/collection.d.ts +46 -0
  553. package/dist/rest-resources/2022-10/collection.d.ts.map +1 -0
  554. package/dist/rest-resources/2022-10/collection.js +69 -0
  555. package/dist/rest-resources/2022-10/collection_listing.d.ts +58 -0
  556. package/dist/rest-resources/2022-10/collection_listing.d.ts.map +1 -0
  557. package/dist/rest-resources/2022-10/collection_listing.js +111 -0
  558. package/dist/rest-resources/2022-10/comment.d.ts +103 -0
  559. package/dist/rest-resources/2022-10/comment.d.ts.map +1 -0
  560. package/dist/rest-resources/2022-10/comment.js +202 -0
  561. package/dist/rest-resources/2022-10/country.d.ts +51 -0
  562. package/dist/rest-resources/2022-10/country.d.ts.map +1 -0
  563. package/dist/rest-resources/2022-10/country.js +111 -0
  564. package/dist/rest-resources/2022-10/currency.d.ts +27 -0
  565. package/dist/rest-resources/2022-10/currency.d.ts.map +1 -0
  566. package/dist/rest-resources/2022-10/currency.js +43 -0
  567. package/dist/rest-resources/2022-10/custom_collection.d.ts +73 -0
  568. package/dist/rest-resources/2022-10/custom_collection.d.ts.map +1 -0
  569. package/dist/rest-resources/2022-10/custom_collection.js +108 -0
  570. package/dist/rest-resources/2022-10/customer.d.ts +119 -0
  571. package/dist/rest-resources/2022-10/customer.d.ts.map +1 -0
  572. package/dist/rest-resources/2022-10/customer.js +203 -0
  573. package/dist/rest-resources/2022-10/customer_address.d.ts +71 -0
  574. package/dist/rest-resources/2022-10/customer_address.d.ts.map +1 -0
  575. package/dist/rest-resources/2022-10/customer_address.js +134 -0
  576. package/dist/rest-resources/2022-10/customer_saved_search.d.ts +59 -0
  577. package/dist/rest-resources/2022-10/customer_saved_search.d.ts.map +1 -0
  578. package/dist/rest-resources/2022-10/customer_saved_search.js +131 -0
  579. package/dist/rest-resources/2022-10/deprecated_api_call.d.ts +29 -0
  580. package/dist/rest-resources/2022-10/deprecated_api_call.d.ts.map +1 -0
  581. package/dist/rest-resources/2022-10/deprecated_api_call.js +43 -0
  582. package/dist/rest-resources/2022-10/discount_code.d.ts +73 -0
  583. package/dist/rest-resources/2022-10/discount_code.d.ts.map +1 -0
  584. package/dist/rest-resources/2022-10/discount_code.js +178 -0
  585. package/dist/rest-resources/2022-10/dispute.d.ts +45 -0
  586. package/dist/rest-resources/2022-10/dispute.d.ts.map +1 -0
  587. package/dist/rest-resources/2022-10/dispute.js +62 -0
  588. package/dist/rest-resources/2022-10/dispute_evidence.d.ts +56 -0
  589. package/dist/rest-resources/2022-10/dispute_evidence.d.ts.map +1 -0
  590. package/dist/rest-resources/2022-10/dispute_evidence.js +48 -0
  591. package/dist/rest-resources/2022-10/dispute_file_upload.d.ts +35 -0
  592. package/dist/rest-resources/2022-10/dispute_file_upload.d.ts.map +1 -0
  593. package/dist/rest-resources/2022-10/dispute_file_upload.js +46 -0
  594. package/dist/rest-resources/2022-10/draft_order.d.ts +116 -0
  595. package/dist/rest-resources/2022-10/draft_order.d.ts.map +1 -0
  596. package/dist/rest-resources/2022-10/draft_order.js +157 -0
  597. package/dist/rest-resources/2022-10/event.d.ts +57 -0
  598. package/dist/rest-resources/2022-10/event.d.ts.map +1 -0
  599. package/dist/rest-resources/2022-10/event.js +87 -0
  600. package/dist/rest-resources/2022-10/fulfillment.d.ts +88 -0
  601. package/dist/rest-resources/2022-10/fulfillment.d.ts.map +1 -0
  602. package/dist/rest-resources/2022-10/fulfillment.js +133 -0
  603. package/dist/rest-resources/2022-10/fulfillment_event.d.ts +66 -0
  604. package/dist/rest-resources/2022-10/fulfillment_event.d.ts.map +1 -0
  605. package/dist/rest-resources/2022-10/fulfillment_event.js +92 -0
  606. package/dist/rest-resources/2022-10/fulfillment_order.d.ts +124 -0
  607. package/dist/rest-resources/2022-10/fulfillment_order.d.ts.map +1 -0
  608. package/dist/rest-resources/2022-10/fulfillment_order.js +246 -0
  609. package/dist/rest-resources/2022-10/fulfillment_request.d.ts +38 -0
  610. package/dist/rest-resources/2022-10/fulfillment_request.d.ts.map +1 -0
  611. package/dist/rest-resources/2022-10/fulfillment_request.js +71 -0
  612. package/dist/rest-resources/2022-10/fulfillment_service.d.ts +48 -0
  613. package/dist/rest-resources/2022-10/fulfillment_service.d.ts.map +1 -0
  614. package/dist/rest-resources/2022-10/fulfillment_service.js +85 -0
  615. package/dist/rest-resources/2022-10/gift_card.d.ts +77 -0
  616. package/dist/rest-resources/2022-10/gift_card.d.ts.map +1 -0
  617. package/dist/rest-resources/2022-10/gift_card.js +133 -0
  618. package/dist/rest-resources/2022-10/gift_card_adjustment.d.ts +45 -0
  619. package/dist/rest-resources/2022-10/gift_card_adjustment.d.ts.map +1 -0
  620. package/dist/rest-resources/2022-10/gift_card_adjustment.js +66 -0
  621. package/dist/rest-resources/2022-10/image.d.ts +57 -0
  622. package/dist/rest-resources/2022-10/image.d.ts.map +1 -0
  623. package/dist/rest-resources/2022-10/image.js +108 -0
  624. package/dist/rest-resources/2022-10/index.d.ts +77 -0
  625. package/dist/rest-resources/2022-10/index.d.ts.map +1 -0
  626. package/dist/rest-resources/2022-10/index.js +156 -0
  627. package/dist/rest-resources/2022-10/inventory_item.d.ts +45 -0
  628. package/dist/rest-resources/2022-10/inventory_item.d.ts.map +1 -0
  629. package/dist/rest-resources/2022-10/inventory_item.js +63 -0
  630. package/dist/rest-resources/2022-10/inventory_level.d.ts +70 -0
  631. package/dist/rest-resources/2022-10/inventory_level.d.ts.map +1 -0
  632. package/dist/rest-resources/2022-10/inventory_level.js +133 -0
  633. package/dist/rest-resources/2022-10/location.d.ts +58 -0
  634. package/dist/rest-resources/2022-10/location.d.ts.map +1 -0
  635. package/dist/rest-resources/2022-10/location.js +108 -0
  636. package/dist/rest-resources/2022-10/locations_for_move.d.ts +29 -0
  637. package/dist/rest-resources/2022-10/locations_for_move.d.ts.map +1 -0
  638. package/dist/rest-resources/2022-10/locations_for_move.js +43 -0
  639. package/dist/rest-resources/2022-10/marketing_event.d.ts +79 -0
  640. package/dist/rest-resources/2022-10/marketing_event.d.ts.map +1 -0
  641. package/dist/rest-resources/2022-10/marketing_event.js +131 -0
  642. package/dist/rest-resources/2022-10/metafield.d.ts +114 -0
  643. package/dist/rest-resources/2022-10/metafield.d.ts.map +1 -0
  644. package/dist/rest-resources/2022-10/metafield.js +172 -0
  645. package/dist/rest-resources/2022-10/mobile_platform_application.d.ts +41 -0
  646. package/dist/rest-resources/2022-10/mobile_platform_application.d.ts.map +1 -0
  647. package/dist/rest-resources/2022-10/mobile_platform_application.js +85 -0
  648. package/dist/rest-resources/2022-10/order.d.ts +223 -0
  649. package/dist/rest-resources/2022-10/order.d.ts.map +1 -0
  650. package/dist/rest-resources/2022-10/order.js +187 -0
  651. package/dist/rest-resources/2022-10/order_risk.d.ts +49 -0
  652. package/dist/rest-resources/2022-10/order_risk.d.ts.map +1 -0
  653. package/dist/rest-resources/2022-10/order_risk.js +88 -0
  654. package/dist/rest-resources/2022-10/page.d.ts +76 -0
  655. package/dist/rest-resources/2022-10/page.d.ts.map +1 -0
  656. package/dist/rest-resources/2022-10/page.js +111 -0
  657. package/dist/rest-resources/2022-10/payment.d.ts +55 -0
  658. package/dist/rest-resources/2022-10/payment.d.ts.map +1 -0
  659. package/dist/rest-resources/2022-10/payment.js +91 -0
  660. package/dist/rest-resources/2022-10/payment_gateway.d.ts +52 -0
  661. package/dist/rest-resources/2022-10/payment_gateway.d.ts.map +1 -0
  662. package/dist/rest-resources/2022-10/payment_gateway.js +85 -0
  663. package/dist/rest-resources/2022-10/payment_transaction.d.ts +47 -0
  664. package/dist/rest-resources/2022-10/payment_transaction.d.ts.map +1 -0
  665. package/dist/rest-resources/2022-10/payment_transaction.js +50 -0
  666. package/dist/rest-resources/2022-10/payout.d.ts +41 -0
  667. package/dist/rest-resources/2022-10/payout.d.ts.map +1 -0
  668. package/dist/rest-resources/2022-10/payout.js +62 -0
  669. package/dist/rest-resources/2022-10/policy.d.ts +31 -0
  670. package/dist/rest-resources/2022-10/policy.d.ts.map +1 -0
  671. package/dist/rest-resources/2022-10/policy.js +43 -0
  672. package/dist/rest-resources/2022-10/price_rule.d.ts +90 -0
  673. package/dist/rest-resources/2022-10/price_rule.d.ts.map +1 -0
  674. package/dist/rest-resources/2022-10/price_rule.js +108 -0
  675. package/dist/rest-resources/2022-10/product.d.ts +95 -0
  676. package/dist/rest-resources/2022-10/product.d.ts.map +1 -0
  677. package/dist/rest-resources/2022-10/product.js +113 -0
  678. package/dist/rest-resources/2022-10/product_listing.d.ts +73 -0
  679. package/dist/rest-resources/2022-10/product_listing.d.ts.map +1 -0
  680. package/dist/rest-resources/2022-10/product_listing.js +136 -0
  681. package/dist/rest-resources/2022-10/product_resource_feedback.d.ts +36 -0
  682. package/dist/rest-resources/2022-10/product_resource_feedback.d.ts.map +1 -0
  683. package/dist/rest-resources/2022-10/product_resource_feedback.js +47 -0
  684. package/dist/rest-resources/2022-10/province.d.ts +50 -0
  685. package/dist/rest-resources/2022-10/province.d.ts.map +1 -0
  686. package/dist/rest-resources/2022-10/province.js +86 -0
  687. package/dist/rest-resources/2022-10/recurring_application_charge.d.ts +61 -0
  688. package/dist/rest-resources/2022-10/recurring_application_charge.d.ts.map +1 -0
  689. package/dist/rest-resources/2022-10/recurring_application_charge.js +107 -0
  690. package/dist/rest-resources/2022-10/redirect.d.ts +51 -0
  691. package/dist/rest-resources/2022-10/redirect.d.ts.map +1 -0
  692. package/dist/rest-resources/2022-10/redirect.js +108 -0
  693. package/dist/rest-resources/2022-10/refund.d.ts +70 -0
  694. package/dist/rest-resources/2022-10/refund.d.ts.map +1 -0
  695. package/dist/rest-resources/2022-10/refund.js +89 -0
  696. package/dist/rest-resources/2022-10/report.d.ts +47 -0
  697. package/dist/rest-resources/2022-10/report.d.ts.map +1 -0
  698. package/dist/rest-resources/2022-10/report.js +85 -0
  699. package/dist/rest-resources/2022-10/resource_feedback.d.ts +32 -0
  700. package/dist/rest-resources/2022-10/resource_feedback.d.ts.map +1 -0
  701. package/dist/rest-resources/2022-10/resource_feedback.js +44 -0
  702. package/dist/rest-resources/2022-10/script_tag.d.ts +57 -0
  703. package/dist/rest-resources/2022-10/script_tag.d.ts.map +1 -0
  704. package/dist/rest-resources/2022-10/script_tag.js +108 -0
  705. package/dist/rest-resources/2022-10/shipping_zone.d.ts +45 -0
  706. package/dist/rest-resources/2022-10/shipping_zone.d.ts.map +1 -0
  707. package/dist/rest-resources/2022-10/shipping_zone.js +48 -0
  708. package/dist/rest-resources/2022-10/shop.d.ts +82 -0
  709. package/dist/rest-resources/2022-10/shop.d.ts.map +1 -0
  710. package/dist/rest-resources/2022-10/shop.js +43 -0
  711. package/dist/rest-resources/2022-10/smart_collection.d.ts +87 -0
  712. package/dist/rest-resources/2022-10/smart_collection.d.ts.map +1 -0
  713. package/dist/rest-resources/2022-10/smart_collection.js +131 -0
  714. package/dist/rest-resources/2022-10/storefront_access_token.d.ts +35 -0
  715. package/dist/rest-resources/2022-10/storefront_access_token.d.ts.map +1 -0
  716. package/dist/rest-resources/2022-10/storefront_access_token.js +65 -0
  717. package/dist/rest-resources/2022-10/tender_transaction.d.ts +43 -0
  718. package/dist/rest-resources/2022-10/tender_transaction.d.ts.map +1 -0
  719. package/dist/rest-resources/2022-10/tender_transaction.js +43 -0
  720. package/dist/rest-resources/2022-10/theme.d.ts +45 -0
  721. package/dist/rest-resources/2022-10/theme.d.ts.map +1 -0
  722. package/dist/rest-resources/2022-10/theme.js +85 -0
  723. package/dist/rest-resources/2022-10/transaction.d.ts +77 -0
  724. package/dist/rest-resources/2022-10/transaction.d.ts.map +1 -0
  725. package/dist/rest-resources/2022-10/transaction.js +86 -0
  726. package/dist/rest-resources/2022-10/usage_charge.d.ts +40 -0
  727. package/dist/rest-resources/2022-10/usage_charge.d.ts.map +1 -0
  728. package/dist/rest-resources/2022-10/usage_charge.js +63 -0
  729. package/dist/rest-resources/2022-10/user.d.ts +51 -0
  730. package/dist/rest-resources/2022-10/user.d.ts.map +1 -0
  731. package/dist/rest-resources/2022-10/user.js +85 -0
  732. package/dist/rest-resources/2022-10/variant.d.ts +79 -0
  733. package/dist/rest-resources/2022-10/variant.d.ts.map +1 -0
  734. package/dist/rest-resources/2022-10/variant.js +112 -0
  735. package/dist/rest-resources/2022-10/webhook.d.ts +62 -0
  736. package/dist/rest-resources/2022-10/webhook.d.ts.map +1 -0
  737. package/dist/rest-resources/2022-10/webhook.js +108 -0
  738. package/dist/types.d.ts +1 -0
  739. package/dist/types.d.ts.map +1 -1
  740. package/dist/types.js +1 -0
  741. package/dist/utils/decode-session-token.js +1 -1
  742. package/dist/utils/get-embedded-app-url.d.ts +1 -0
  743. package/dist/utils/get-embedded-app-url.d.ts.map +1 -1
  744. package/dist/utils/get-embedded-app-url.js +8 -2
  745. package/dist/utils/setup-jest.d.ts.map +1 -1
  746. package/dist/utils/setup-jest.js +10 -1
  747. package/dist/version.d.ts +1 -1
  748. package/dist/version.js +1 -1
  749. package/dist/webhooks/registry.js +1 -1
  750. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -7,6 +7,17 @@ and adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
7
7
 
8
8
  ## Unreleased
9
9
 
10
+ ## [5.2.0] - 2022-10-04
11
+
12
+ - Added support for the `2022-10` API version [#535](https://github.com/Shopify/shopify-api-node/pull/535)
13
+
14
+ ## [5.1.0] - 2022-09-19
15
+
16
+ - Increased tolerance for expired JWT session tokens from 5s to 10s [#462](https://github.com/Shopify/shopify-api-node/pull/462)
17
+ - Add support for billing to the library [#449](https://github.com/Shopify/shopify-api-node/pull/449)
18
+ - Allow dynamically typing the body of REST and GraphQL request responses, so callers don't need to cast it [#447](https://github.com/Shopify/shopify-api-node/pull/447)
19
+ - Rather than create a temporary session in order to store a session id in a cookie for the OAuth transaction, we can store the `state` in the cookie instead, that can then be compared against the `state` provided by Shopify in the callback. [#438](https://github.com/Shopify/shopify-api-node/pull/438)
20
+
10
21
  ## [5.0.1] - 2022-08-03
11
22
 
12
23
  - Make `sanitizeHost` validation more flexible [#446](https://github.com/Shopify/shopify-api-node/pull/446)
package/README.md CHANGED
@@ -51,5 +51,6 @@ You can follow our [getting started guide](docs/), which will provide instructio
51
51
  - [Webhooks](docs/usage/webhooks.md)
52
52
  - [Register a Webhook](docs/usage/webhooks.md#register-a-webhook)
53
53
  - [Process a Webhook](docs/usage/webhooks.md#process-a-webhook)
54
+ - [Billing](docs/usage/billing.md)
54
55
  - [Known issues and caveats](docs/issues.md)
55
56
  - [Notes on session handling](docs/issues.md#notes-on-session-handling)
@@ -3,6 +3,7 @@ import { SessionInterface } from '../session/types';
3
3
  import { AuthQuery } from './types';
4
4
  declare const ShopifyOAuth: {
5
5
  SESSION_COOKIE_NAME: string;
6
+ STATE_COOKIE_NAME: string;
6
7
  /**
7
8
  * Initializes a session and cookie for the OAuth process, and returns the necessary authorization url.
8
9
  *
@@ -24,6 +25,7 @@ declare const ShopifyOAuth: {
24
25
  * @param response Current HTTP Response
25
26
  * @param query Current HTTP Request Query, containing the information to be validated.
26
27
  * Depending on framework, this may need to be cast as "unknown" before being passed.
28
+ * @param isOnline Boolean value. Defaults to true (online access).
27
29
  * @returns SessionInterface
28
30
  */
29
31
  validateAuthCallback(request: http.IncomingMessage, response: http.ServerResponse, query: AuthQuery): Promise<SessionInterface>;
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../src/auth/oauth/oauth.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAexB,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EACL,SAAS,EAIV,MAAM,SAAS,CAAC;AAEjB,QAAA,MAAM,YAAY;;IAGhB;;;;;;;;;;OAUG;uBAEQ,KAAK,eAAe,YACnB,KAAK,cAAc,QACvB,MAAM,gBACE,MAAM,uBAEnB,QAAQ,MAAM,CAAC;IAiDlB;;;;;;;;;;OAUG;kCAEQ,KAAK,eAAe,YACnB,KAAK,cAAc,SACtB,SAAS,GACf,QAAQ,gBAAgB,CAAC;IAuG5B;;;;;OAKG;gCAEQ,KAAK,eAAe,YACnB,KAAK,cAAc,GAC5B,MAAM,GAAG,SAAS;IAQrB;;;;;OAKG;0BACmB,MAAM,UAAU,MAAM,GAAG,MAAM;IAIrD;;;;OAIG;8BACuB,MAAM,GAAG,MAAM;IAIzC;;;;;;OAMG;iCAEQ,KAAK,eAAe,YACnB,KAAK,cAAc,uBAE5B,MAAM,GAAG,SAAS;CAiCtB,CAAC;AAcF,OAAO,EAAC,YAAY,EAAC,CAAC"}
1
+ {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../src/auth/oauth/oauth.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAexB,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EACL,SAAS,EAIV,MAAM,SAAS,CAAC;AAEjB,QAAA,MAAM,YAAY;;;IAIhB;;;;;;;;;;OAUG;uBAEQ,KAAK,eAAe,YACnB,KAAK,cAAc,QACvB,MAAM,gBACE,MAAM,uBAEnB,QAAQ,MAAM,CAAC;IAkClB;;;;;;;;;;;OAWG;kCAEQ,KAAK,eAAe,YACnB,KAAK,cAAc,SACtB,SAAS,GACf,QAAQ,gBAAgB,CAAC;IAwE5B;;;;;OAKG;gCAEQ,KAAK,eAAe,YACnB,KAAK,cAAc,GAC5B,MAAM,GAAG,SAAS;IAIrB;;;;;OAKG;0BACmB,MAAM,UAAU,MAAM,GAAG,MAAM;IAIrD;;;;OAIG;8BACuB,MAAM,GAAG,MAAM;IAIzC;;;;;;OAMG;iCAEQ,KAAK,eAAe,YACnB,KAAK,cAAc,uBAE5B,MAAM,GAAG,SAAS;CAqCtB,CAAC;AAwGF,OAAO,EAAC,YAAY,EAAC,CAAC"}
@@ -17,6 +17,7 @@ var ShopifyErrors = tslib_1.__importStar(require("../../error"));
17
17
  var shop_validator_1 = require("../../utils/shop-validator");
18
18
  var ShopifyOAuth = {
19
19
  SESSION_COOKIE_NAME: 'shopify_app_session',
20
+ STATE_COOKIE_NAME: 'shopify_app_state',
20
21
  /**
21
22
  * Initializes a session and cookie for the OAuth process, and returns the necessary authorization url.
22
23
  *
@@ -31,41 +32,31 @@ var ShopifyOAuth = {
31
32
  beginAuth: function (request, response, shop, redirectPath, isOnline) {
32
33
  if (isOnline === void 0) { isOnline = true; }
33
34
  return tslib_1.__awaiter(this, void 0, void 0, function () {
34
- var cleanShop, cookies, state, session, sessionStored, query, queryString;
35
+ var cleanShop, cookies, state, query, queryString;
35
36
  return tslib_1.__generator(this, function (_a) {
36
- switch (_a.label) {
37
- case 0:
38
- context_1.Context.throwIfUninitialized();
39
- context_1.Context.throwIfPrivateApp('Cannot perform OAuth for private apps');
40
- cleanShop = (0, shop_validator_1.sanitizeShop)(shop, true);
41
- cookies = new cookies_1.default(request, response, {
42
- keys: [context_1.Context.API_SECRET_KEY],
43
- secure: true,
44
- });
45
- state = (0, nonce_1.default)();
46
- session = new session_1.Session(isOnline ? (0, uuid_1.v4)() : this.getOfflineSessionId(cleanShop), cleanShop, state, isOnline);
47
- return [4 /*yield*/, context_1.Context.SESSION_STORAGE.storeSession(session)];
48
- case 1:
49
- sessionStored = _a.sent();
50
- if (!sessionStored) {
51
- throw new ShopifyErrors.SessionStorageError('OAuth Session could not be saved. Please check your session storage functionality.');
52
- }
53
- cookies.set(ShopifyOAuth.SESSION_COOKIE_NAME, session.id, {
54
- signed: true,
55
- expires: new Date(Date.now() + 60000),
56
- sameSite: 'lax',
57
- secure: true,
58
- });
59
- query = {
60
- client_id: context_1.Context.API_KEY,
61
- scope: context_1.Context.SCOPES.toString(),
62
- redirect_uri: "".concat(context_1.Context.HOST_SCHEME, "://").concat(context_1.Context.HOST_NAME).concat(redirectPath),
63
- state: state,
64
- 'grant_options[]': isOnline ? 'per-user' : '',
65
- };
66
- queryString = querystring_1.default.stringify(query);
67
- return [2 /*return*/, "https://".concat(cleanShop, "/admin/oauth/authorize?").concat(queryString)];
68
- }
37
+ context_1.Context.throwIfUninitialized();
38
+ context_1.Context.throwIfPrivateApp('Cannot perform OAuth for private apps');
39
+ cleanShop = (0, shop_validator_1.sanitizeShop)(shop, true);
40
+ cookies = new cookies_1.default(request, response, {
41
+ keys: [context_1.Context.API_SECRET_KEY],
42
+ secure: true,
43
+ });
44
+ state = isOnline ? "online_".concat((0, nonce_1.default)()) : "offline_".concat((0, nonce_1.default)());
45
+ cookies.set(ShopifyOAuth.STATE_COOKIE_NAME, state, {
46
+ signed: true,
47
+ expires: new Date(Date.now() + 60000),
48
+ sameSite: 'lax',
49
+ secure: true,
50
+ });
51
+ query = {
52
+ client_id: context_1.Context.API_KEY,
53
+ scope: context_1.Context.SCOPES.toString(),
54
+ redirect_uri: "".concat(context_1.Context.HOST_SCHEME, "://").concat(context_1.Context.HOST_NAME).concat(redirectPath),
55
+ state: state,
56
+ 'grant_options[]': isOnline ? 'per-user' : '',
57
+ };
58
+ queryString = querystring_1.default.stringify(query);
59
+ return [2 /*return*/, "https://".concat(cleanShop, "/admin/oauth/authorize?").concat(queryString)];
69
60
  });
70
61
  });
71
62
  },
@@ -78,33 +69,26 @@ var ShopifyOAuth = {
78
69
  * @param response Current HTTP Response
79
70
  * @param query Current HTTP Request Query, containing the information to be validated.
80
71
  * Depending on framework, this may need to be cast as "unknown" before being passed.
72
+ * @param isOnline Boolean value. Defaults to true (online access).
81
73
  * @returns SessionInterface
82
74
  */
83
75
  validateAuthCallback: function (request, response, query) {
84
76
  return tslib_1.__awaiter(this, void 0, void 0, function () {
85
- var cookies, sessionCookie, currentSession, body, postParams, client, postResponse, responseBody, access_token, scope, rest, sessionExpiration, onlineInfo, jwtSessionId, jwtSession, sessionDeleted, responseBody, sessionStored;
77
+ var stateFromCookie, isOnline, body, postParams, cleanShop, client, postResponse, session, cookies, sessionStored;
86
78
  return tslib_1.__generator(this, function (_a) {
87
79
  switch (_a.label) {
88
80
  case 0:
89
81
  context_1.Context.throwIfUninitialized();
90
82
  context_1.Context.throwIfPrivateApp('Cannot perform OAuth for private apps');
91
- cookies = new cookies_1.default(request, response, {
92
- keys: [context_1.Context.API_SECRET_KEY],
93
- secure: true,
94
- });
95
- sessionCookie = this.getCookieSessionId(request, response);
96
- if (!sessionCookie) {
83
+ stateFromCookie = getValueFromCookie(request, response, this.STATE_COOKIE_NAME);
84
+ deleteCookie(request, response, this.STATE_COOKIE_NAME);
85
+ if (!stateFromCookie) {
97
86
  throw new ShopifyErrors.CookieNotFound("Cannot complete OAuth process. Could not find an OAuth cookie for shop url: ".concat(query.shop));
98
87
  }
99
- return [4 /*yield*/, context_1.Context.SESSION_STORAGE.loadSession(sessionCookie)];
100
- case 1:
101
- currentSession = _a.sent();
102
- if (!currentSession) {
103
- throw new ShopifyErrors.SessionNotFound("Cannot complete OAuth process. No session found for the specified shop url: ".concat(query.shop));
104
- }
105
- if (!validQuery(query, currentSession)) {
88
+ if (!validQuery(query, stateFromCookie)) {
106
89
  throw new ShopifyErrors.InvalidOAuthError('Invalid OAuth callback.');
107
90
  }
91
+ isOnline = stateFromCookie.startsWith('online_');
108
92
  body = {
109
93
  client_id: context_1.Context.API_KEY,
110
94
  client_secret: context_1.Context.API_SECRET_KEY,
@@ -115,50 +99,31 @@ var ShopifyOAuth = {
115
99
  type: types_1.DataType.JSON,
116
100
  data: body,
117
101
  };
118
- client = new http_client_1.HttpClient(currentSession.shop);
102
+ cleanShop = (0, shop_validator_1.sanitizeShop)(query.shop, true);
103
+ client = new http_client_1.HttpClient(cleanShop);
119
104
  return [4 /*yield*/, client.post(postParams)];
120
- case 2:
105
+ case 1:
121
106
  postResponse = _a.sent();
122
- if (!currentSession.isOnline) return [3 /*break*/, 5];
123
- responseBody = postResponse.body;
124
- access_token = responseBody.access_token, scope = responseBody.scope, rest = tslib_1.__rest(responseBody, ["access_token", "scope"]);
125
- sessionExpiration = new Date(Date.now() + responseBody.expires_in * 1000);
126
- currentSession.accessToken = access_token;
127
- currentSession.expires = sessionExpiration;
128
- currentSession.scope = scope;
129
- currentSession.onlineAccessInfo = rest;
130
- if (!context_1.Context.IS_EMBEDDED_APP) return [3 /*break*/, 4];
131
- onlineInfo = currentSession.onlineAccessInfo;
132
- jwtSessionId = this.getJwtSessionId(currentSession.shop, "".concat(onlineInfo.associated_user.id));
133
- jwtSession = session_1.Session.cloneSession(currentSession, jwtSessionId);
134
- return [4 /*yield*/, context_1.Context.SESSION_STORAGE.deleteSession(currentSession.id)];
135
- case 3:
136
- sessionDeleted = _a.sent();
137
- if (!sessionDeleted) {
138
- throw new ShopifyErrors.SessionStorageError('OAuth Session could not be deleted. Please check your session storage functionality.');
107
+ session = createSession(postResponse, cleanShop, stateFromCookie, isOnline);
108
+ if (!context_1.Context.IS_EMBEDDED_APP) {
109
+ cookies = new cookies_1.default(request, response, {
110
+ keys: [context_1.Context.API_SECRET_KEY],
111
+ secure: true,
112
+ });
113
+ cookies.set(ShopifyOAuth.SESSION_COOKIE_NAME, session.id, {
114
+ signed: true,
115
+ expires: session.expires,
116
+ sameSite: 'lax',
117
+ secure: true,
118
+ });
139
119
  }
140
- currentSession = jwtSession;
141
- _a.label = 4;
142
- case 4: return [3 /*break*/, 6];
143
- case 5:
144
- responseBody = postResponse.body;
145
- currentSession.accessToken = responseBody.access_token;
146
- currentSession.scope = responseBody.scope;
147
- _a.label = 6;
148
- case 6:
149
- cookies.set(ShopifyOAuth.SESSION_COOKIE_NAME, currentSession.id, {
150
- signed: true,
151
- expires: context_1.Context.IS_EMBEDDED_APP ? new Date() : currentSession.expires,
152
- sameSite: 'lax',
153
- secure: true,
154
- });
155
- return [4 /*yield*/, context_1.Context.SESSION_STORAGE.storeSession(currentSession)];
156
- case 7:
120
+ return [4 /*yield*/, context_1.Context.SESSION_STORAGE.storeSession(session)];
121
+ case 2:
157
122
  sessionStored = _a.sent();
158
123
  if (!sessionStored) {
159
- throw new ShopifyErrors.SessionStorageError('OAuth Session could not be saved. Please check your session storage functionality.');
124
+ throw new ShopifyErrors.SessionStorageError('Session could not be saved. Please check your session storage functionality.');
160
125
  }
161
- return [2 /*return*/, currentSession];
126
+ return [2 /*return*/, session];
162
127
  }
163
128
  });
164
129
  });
@@ -170,11 +135,7 @@ var ShopifyOAuth = {
170
135
  * @param response HTTP response object
171
136
  */
172
137
  getCookieSessionId: function (request, response) {
173
- var cookies = new cookies_1.default(request, response, {
174
- secure: true,
175
- keys: [context_1.Context.API_SECRET_KEY],
176
- });
177
- return cookies.get(this.SESSION_COOKIE_NAME, { signed: true });
138
+ return getValueFromCookie(request, response, this.SESSION_COOKIE_NAME);
178
139
  },
179
140
  /**
180
141
  * Builds a JWT session id from the current shop and user.
@@ -225,7 +186,7 @@ var ShopifyOAuth = {
225
186
  // JWT.
226
187
  if (!currentSessionId) {
227
188
  // We still want to get the offline session id from the cookie to make sure it's validated
228
- currentSessionId = this.getCookieSessionId(request, response);
189
+ currentSessionId = getValueFromCookie(request, response, this.SESSION_COOKIE_NAME);
229
190
  }
230
191
  return currentSessionId;
231
192
  },
@@ -235,8 +196,72 @@ exports.ShopifyOAuth = ShopifyOAuth;
235
196
  * Uses the validation utils validateHmac, and safeCompare to assess whether the callback is valid.
236
197
  *
237
198
  * @param query Current HTTP Request Query
238
- * @param session Current session
199
+ * @param stateFromCookie state value from the current cookie
239
200
  */
240
- function validQuery(query, session) {
241
- return ((0, hmac_validator_1.default)(query) && (0, safe_compare_1.default)(query.state, session.state));
201
+ function validQuery(query, stateFromCookie) {
202
+ return (0, hmac_validator_1.default)(query) && (0, safe_compare_1.default)(query.state, stateFromCookie);
203
+ }
204
+ /**
205
+ * Loads a given value from the cookie
206
+ *
207
+ * @param request HTTP request object
208
+ * @param response HTTP response object
209
+ * @param name Name of the cookie to load
210
+ */
211
+ function getValueFromCookie(request, response, name) {
212
+ var cookies = new cookies_1.default(request, response, {
213
+ secure: true,
214
+ keys: [context_1.Context.API_SECRET_KEY],
215
+ });
216
+ return cookies.get(name, { signed: true });
217
+ }
218
+ /**
219
+ * Loads a given value from the cookie
220
+ *
221
+ * @param request HTTP request object
222
+ * @param response HTTP response object
223
+ * @param name Name of the cookie to load
224
+ */
225
+ function deleteCookie(request, response, name) {
226
+ var cookies = new cookies_1.default(request, response, {
227
+ secure: true,
228
+ keys: [context_1.Context.API_SECRET_KEY],
229
+ });
230
+ cookies.set(name);
231
+ }
232
+ /**
233
+ * Creates a new session from the response from the access token request.
234
+ *
235
+ * @param postResponse Response from the access token request
236
+ * @param shop Shop url: {shop}.myshopify.com
237
+ * @param stateFromCookie State from the cookie received by the OAuth callback
238
+ * @param isOnline Boolean indicating if the access token is for online access
239
+ * @returns SessionInterface
240
+ */
241
+ function createSession(postResponse, shop, stateFromCookie, isOnline) {
242
+ var session;
243
+ if (isOnline) {
244
+ var sessionId = void 0;
245
+ var responseBody = postResponse.body;
246
+ var access_token = responseBody.access_token, scope = responseBody.scope, rest = tslib_1.__rest(responseBody, ["access_token", "scope"]); // eslint-disable-line @typescript-eslint/naming-convention
247
+ var sessionExpiration = new Date(Date.now() + responseBody.expires_in * 1000);
248
+ if (context_1.Context.IS_EMBEDDED_APP) {
249
+ sessionId = ShopifyOAuth.getJwtSessionId(shop, "".concat(rest.associated_user.id));
250
+ }
251
+ else {
252
+ sessionId = (0, uuid_1.v4)();
253
+ }
254
+ session = new session_1.Session(sessionId, shop, stateFromCookie, isOnline);
255
+ session.accessToken = access_token;
256
+ session.scope = scope;
257
+ session.expires = sessionExpiration;
258
+ session.onlineAccessInfo = rest;
259
+ }
260
+ else {
261
+ var responseBody = postResponse.body;
262
+ session = new session_1.Session(ShopifyOAuth.getOfflineSessionId(shop), shop, stateFromCookie, isOnline);
263
+ session.accessToken = responseBody.access_token;
264
+ session.scope = responseBody.scope;
265
+ }
266
+ return session;
242
267
  }
@@ -3,6 +3,7 @@ import { SessionInterface } from '../types';
3
3
  import { SessionStorage } from '../session_storage';
4
4
  export interface RedisSessionStorageOptions extends RedisClientOptions {
5
5
  sessionKeyPrefix: string;
6
+ onError?: (...args: any[]) => void;
6
7
  }
7
8
  export declare class RedisSessionStorage implements SessionStorage {
8
9
  private dbUrl;
@@ -1 +1 @@
1
- {"version":3,"file":"redis.d.ts","sourceRoot":"","sources":["../../../../src/auth/session/storage/redis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,kBAAkB,EAAC,MAAM,OAAO,CAAC;AAExE,OAAO,EAAC,gBAAgB,EAAC,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAIlD,MAAM,WAAW,0BAA2B,SAAQ,kBAAkB;IACpE,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAKD,qBAAa,mBAAoB,YAAW,cAAc;IAuBtD,OAAO,CAAC,KAAK;IAtBf,MAAM,CAAC,eAAe,CACpB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,CAAC,0BAA0B,CAAC;IAY3C,SAAgB,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,MAAM,CAAkB;gBAGtB,KAAK,EAAE,GAAG,EAClB,IAAI,GAAE,OAAO,CAAC,0BAA0B,CAAM;IASnC,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IAUzD,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAW9D,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAM3C,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAM/C,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAiB7D,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxC,OAAO,CAAC,OAAO;YAID,IAAI;CAOnB"}
1
+ {"version":3,"file":"redis.d.ts","sourceRoot":"","sources":["../../../../src/auth/session/storage/redis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,kBAAkB,EAAC,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAC,gBAAgB,EAAC,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAKlD,MAAM,WAAW,0BAA2B,SAAQ,kBAAkB;IACpE,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;CACpC;AAKD,qBAAa,mBAAoB,YAAW,cAAc;IAuBtD,OAAO,CAAC,KAAK;IAtBf,MAAM,CAAC,eAAe,CACpB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,CAAC,0BAA0B,CAAC;IAY3C,SAAgB,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,MAAM,CAAc;gBAGlB,KAAK,EAAE,GAAG,EAClB,IAAI,GAAE,OAAO,CAAC,0BAA0B,CAAM;IASnC,YAAY,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IAUzD,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAW9D,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAM3C,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAM/C,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAiB7D,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxC,OAAO,CAAC,OAAO;YAID,IAAI;CAUnB"}
@@ -157,6 +157,9 @@ var RedisSessionStorage = /** @class */ (function () {
157
157
  switch (_a.label) {
158
158
  case 0:
159
159
  this.client = (0, redis_1.createClient)(tslib_1.__assign(tslib_1.__assign({}, this.options), { url: this.dbUrl.toString() }));
160
+ if (this.options.onError) {
161
+ this.client.on('error', this.options.onError);
162
+ }
160
163
  return [4 /*yield*/, this.client.connect()];
161
164
  case 1:
162
165
  _a.sent();
@@ -1,5 +1,6 @@
1
1
  import { AuthScopes } from './auth/scopes';
2
2
  import { SessionStorage } from './auth/session/session_storage';
3
+ import { BillingSettings } from './billing/types';
3
4
  export interface ContextParams {
4
5
  API_KEY: string;
5
6
  API_SECRET_KEY: string;
@@ -14,15 +15,17 @@ export interface ContextParams {
14
15
  USER_AGENT_PREFIX?: string;
15
16
  PRIVATE_APP_STOREFRONT_ACCESS_TOKEN?: string;
16
17
  CUSTOM_SHOP_DOMAINS?: (RegExp | string)[];
18
+ BILLING?: BillingSettings;
17
19
  }
18
20
  export declare enum ApiVersion {
19
21
  October21 = "2021-10",
20
22
  January22 = "2022-01",
21
23
  April22 = "2022-04",
22
24
  July22 = "2022-07",
25
+ October22 = "2022-10",
23
26
  Unstable = "unstable"
24
27
  }
25
- export declare const LATEST_API_VERSION = ApiVersion.July22;
28
+ export declare const LATEST_API_VERSION = ApiVersion.October22;
26
29
  export declare enum ShopifyHeader {
27
30
  AccessToken = "X-Shopify-Access-Token",
28
31
  StorefrontAccessToken = "X-Shopify-Storefront-Access-Token",
@@ -1 +1 @@
1
- {"version":3,"file":"base-types.d.ts","sourceRoot":"","sources":["../src/base-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,cAAc,EAAC,MAAM,gCAAgC,CAAC;AAE9D,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,UAAU,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mCAAmC,CAAC,EAAE,MAAM,CAAC;IAC7C,mBAAmB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;CAC3C;AAED,oBAAY,UAAU;IACpB,SAAS,YAAY;IACrB,SAAS,YAAY;IACrB,OAAO,YAAY;IACnB,MAAM,YAAY;IAClB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AAEpD,oBAAY,aAAa;IACvB,WAAW,2BAA2B;IACtC,qBAAqB,sCAAsC;IAC3D,IAAI,0BAA0B;IAC9B,KAAK,oBAAoB;IACzB,MAAM,0BAA0B;CACjC"}
1
+ {"version":3,"file":"base-types.d.ts","sourceRoot":"","sources":["../src/base-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,cAAc,EAAC,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAEhD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,UAAU,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mCAAmC,CAAC,EAAE,MAAM,CAAC;IAC7C,mBAAmB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC1C,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,oBAAY,UAAU;IACpB,SAAS,YAAY;IACrB,SAAS,YAAY;IACrB,OAAO,YAAY;IACnB,MAAM,YAAY;IAClB,SAAS,YAAY;IACrB,QAAQ,aAAa;CACtB;AAED,eAAO,MAAM,kBAAkB,uBAAuB,CAAC;AAEvD,oBAAY,aAAa;IACvB,WAAW,2BAA2B;IACtC,qBAAqB,sCAAsC;IAC3D,IAAI,0BAA0B;IAC9B,KAAK,oBAAoB;IACzB,MAAM,0BAA0B;CACjC"}
@@ -7,9 +7,10 @@ var ApiVersion;
7
7
  ApiVersion["January22"] = "2022-01";
8
8
  ApiVersion["April22"] = "2022-04";
9
9
  ApiVersion["July22"] = "2022-07";
10
+ ApiVersion["October22"] = "2022-10";
10
11
  ApiVersion["Unstable"] = "unstable";
11
12
  })(ApiVersion = exports.ApiVersion || (exports.ApiVersion = {}));
12
- exports.LATEST_API_VERSION = ApiVersion.July22;
13
+ exports.LATEST_API_VERSION = ApiVersion.October22;
13
14
  var ShopifyHeader;
14
15
  (function (ShopifyHeader) {
15
16
  ShopifyHeader["AccessToken"] = "X-Shopify-Access-Token";
@@ -0,0 +1,12 @@
1
+ import { SessionInterface } from '../auth/session/types';
2
+ interface CheckInterface {
3
+ session: SessionInterface;
4
+ isTest?: boolean;
5
+ }
6
+ interface CheckReturn {
7
+ hasPayment: boolean;
8
+ confirmBillingUrl?: string;
9
+ }
10
+ export declare function check({ session, isTest, }: CheckInterface): Promise<CheckReturn>;
11
+ export {};
12
+ //# sourceMappingURL=check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/billing/check.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAKvD,UAAU,cAAc;IACtB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,UAAU,WAAW;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAsB,KAAK,CAAC,EAC1B,OAAO,EACP,MAAa,GACd,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,CAgBvC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.check = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var context_1 = require("../context");
6
+ var has_active_payment_1 = require("./has_active_payment");
7
+ var request_payment_1 = require("./request_payment");
8
+ function check(_a) {
9
+ var session = _a.session, _b = _a.isTest, isTest = _b === void 0 ? true : _b;
10
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
11
+ var hasPayment, confirmBillingUrl;
12
+ return tslib_1.__generator(this, function (_c) {
13
+ switch (_c.label) {
14
+ case 0:
15
+ if (!context_1.Context.BILLING) {
16
+ return [2 /*return*/, { hasPayment: true, confirmBillingUrl: undefined }];
17
+ }
18
+ return [4 /*yield*/, (0, has_active_payment_1.hasActivePayment)(session, isTest)];
19
+ case 1:
20
+ if (!_c.sent()) return [3 /*break*/, 2];
21
+ hasPayment = true;
22
+ return [3 /*break*/, 4];
23
+ case 2:
24
+ hasPayment = false;
25
+ return [4 /*yield*/, (0, request_payment_1.requestPayment)(session, isTest)];
26
+ case 3:
27
+ confirmBillingUrl = _c.sent();
28
+ _c.label = 4;
29
+ case 4: return [2 /*return*/, { hasPayment: hasPayment, confirmBillingUrl: confirmBillingUrl }];
30
+ }
31
+ });
32
+ });
33
+ }
34
+ exports.check = check;
@@ -0,0 +1,3 @@
1
+ import { SessionInterface } from '../auth/session/types';
2
+ export declare function hasActivePayment(session: SessionInterface, isTest: boolean): Promise<boolean>;
3
+ //# sourceMappingURL=has_active_payment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"has_active_payment.d.ts","sourceRoot":"","sources":["../../src/billing/has_active_payment.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AASvD,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,OAAO,CAAC,CAMlB"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hasActivePayment = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var context_1 = require("../context");
6
+ var error_1 = require("../error");
7
+ var graphql_1 = require("../clients/graphql");
8
+ var is_recurring_1 = require("./is_recurring");
9
+ function hasActivePayment(session, isTest) {
10
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
11
+ return tslib_1.__generator(this, function (_a) {
12
+ if ((0, is_recurring_1.isRecurring)()) {
13
+ return [2 /*return*/, hasActiveSubscription(session, isTest)];
14
+ }
15
+ else {
16
+ return [2 /*return*/, hasActiveOneTimePurchase(session, isTest)];
17
+ }
18
+ return [2 /*return*/];
19
+ });
20
+ });
21
+ }
22
+ exports.hasActivePayment = hasActivePayment;
23
+ function hasActiveSubscription(session, isTest) {
24
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
25
+ var client, currentInstallations;
26
+ return tslib_1.__generator(this, function (_a) {
27
+ switch (_a.label) {
28
+ case 0:
29
+ if (!context_1.Context.BILLING) {
30
+ throw new error_1.BillingError({
31
+ message: 'Attempted to look for subscriptions without billing configs',
32
+ errorData: [],
33
+ });
34
+ }
35
+ client = new graphql_1.GraphqlClient(session.shop, session.accessToken);
36
+ return [4 /*yield*/, client.query({
37
+ data: RECURRING_PURCHASES_QUERY,
38
+ })];
39
+ case 1:
40
+ currentInstallations = _a.sent();
41
+ return [2 /*return*/, currentInstallations.body.data.currentAppInstallation.activeSubscriptions.some(function (subscription) {
42
+ return subscription.name === context_1.Context.BILLING.chargeName &&
43
+ (isTest || !subscription.test);
44
+ })];
45
+ }
46
+ });
47
+ });
48
+ }
49
+ function hasActiveOneTimePurchase(session, isTest) {
50
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
51
+ var client, installation, endCursor, currentInstallations;
52
+ return tslib_1.__generator(this, function (_a) {
53
+ switch (_a.label) {
54
+ case 0:
55
+ if (!context_1.Context.BILLING) {
56
+ throw new error_1.BillingError({
57
+ message: 'Attempted to look for one time purchases without billing configs',
58
+ errorData: [],
59
+ });
60
+ }
61
+ client = new graphql_1.GraphqlClient(session.shop, session.accessToken);
62
+ endCursor = null;
63
+ _a.label = 1;
64
+ case 1: return [4 /*yield*/, client.query({
65
+ data: {
66
+ query: ONE_TIME_PURCHASES_QUERY,
67
+ variables: { endCursor: endCursor },
68
+ },
69
+ })];
70
+ case 2:
71
+ currentInstallations = _a.sent();
72
+ installation = currentInstallations.body.data.currentAppInstallation;
73
+ if (installation.oneTimePurchases.edges.some(function (purchase) {
74
+ return purchase.node.name === context_1.Context.BILLING.chargeName &&
75
+ (isTest || !purchase.node.test) &&
76
+ purchase.node.status === 'ACTIVE';
77
+ })) {
78
+ return [2 /*return*/, true];
79
+ }
80
+ endCursor = installation.oneTimePurchases.pageInfo.endCursor;
81
+ _a.label = 3;
82
+ case 3:
83
+ if (installation === null || installation === void 0 ? void 0 : installation.oneTimePurchases.pageInfo.hasNextPage) return [3 /*break*/, 1];
84
+ _a.label = 4;
85
+ case 4: return [2 /*return*/, false];
86
+ }
87
+ });
88
+ });
89
+ }
90
+ var RECURRING_PURCHASES_QUERY = "\n query appSubscription {\n currentAppInstallation {\n activeSubscriptions {\n name\n test\n }\n }\n }\n";
91
+ var ONE_TIME_PURCHASES_QUERY = "\n query appPurchases($endCursor: String) {\n currentAppInstallation {\n oneTimePurchases(first: 250, sortKey: CREATED_AT, after: $endCursor) {\n edges {\n node {\n name\n test\n status\n }\n }\n pageInfo {\n hasNextPage\n endCursor\n }\n }\n }\n }\n";
@@ -0,0 +1,7 @@
1
+ import { check } from './check';
2
+ declare const ShopifyBilling: {
3
+ check: typeof check;
4
+ };
5
+ export { ShopifyBilling };
6
+ export default ShopifyBilling;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/billing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,SAAS,CAAC;AAE9B,QAAA,MAAM,cAAc;;CAEnB,CAAC;AAEF,OAAO,EAAC,cAAc,EAAC,CAAC;AACxB,eAAe,cAAc,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ShopifyBilling = void 0;
4
+ var check_1 = require("./check");
5
+ var ShopifyBilling = {
6
+ check: check_1.check,
7
+ };
8
+ exports.ShopifyBilling = ShopifyBilling;
9
+ exports.default = ShopifyBilling;
@@ -0,0 +1,2 @@
1
+ export declare function isRecurring(): boolean;
2
+ //# sourceMappingURL=is_recurring.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is_recurring.d.ts","sourceRoot":"","sources":["../../src/billing/is_recurring.ts"],"names":[],"mappings":"AAUA,wBAAgB,WAAW,IAAI,OAAO,CASrC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isRecurring = void 0;
4
+ var context_1 = require("../context");
5
+ var error_1 = require("../error");
6
+ var types_1 = require("./types");
7
+ var RECURRING_INTERVALS = [
8
+ types_1.BillingInterval.Every30Days,
9
+ types_1.BillingInterval.Annual,
10
+ ];
11
+ function isRecurring() {
12
+ if (!context_1.Context.BILLING) {
13
+ throw new error_1.BillingError({
14
+ message: 'Attempted to request billing without billing configs',
15
+ errorData: [],
16
+ });
17
+ }
18
+ return RECURRING_INTERVALS.includes(context_1.Context.BILLING.interval);
19
+ }
20
+ exports.isRecurring = isRecurring;
@@ -0,0 +1,3 @@
1
+ import { SessionInterface } from '../auth/session/types';
2
+ export declare function requestPayment(session: SessionInterface, isTest: boolean): Promise<string | undefined>;
3
+ //# sourceMappingURL=request_payment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request_payment.d.ts","sourceRoot":"","sources":["../../src/billing/request_payment.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAYvD,wBAAsB,cAAc,CAClC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA8B7B"}