shopify_api 12.4.0 → 12.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (200) hide show
  1. checksums.yaml +4 -4
  2. data/.github/api_update_reminder.md +25 -0
  3. data/.github/api_update_reminder_on_release.md +19 -0
  4. data/.github/workflows/api_update_reminder.yml +16 -0
  5. data/.github/workflows/api_update_reminder_on_release.yml +16 -0
  6. data/.github/workflows/stale.yml +20 -10
  7. data/CHANGELOG.md +11 -4
  8. data/CONTRIBUTING.md +2 -2
  9. data/Gemfile.lock +6 -6
  10. data/README.md +10 -10
  11. data/docs/getting_started.md +2 -2
  12. data/docs/usage/graphql.md +6 -0
  13. data/docs/usage/graphql_storefront.md +8 -2
  14. data/docs/usage/oauth.md +1 -1
  15. data/docs/usage/rest.md +9 -2
  16. data/docs/usage/webhooks.md +1 -1
  17. data/lib/shopify_api/admin_versions.rb +2 -1
  18. data/lib/shopify_api/clients/graphql/admin.rb +3 -3
  19. data/lib/shopify_api/clients/graphql/client.rb +13 -3
  20. data/lib/shopify_api/clients/graphql/storefront.rb +3 -3
  21. data/lib/shopify_api/clients/http_client.rb +8 -1
  22. data/lib/shopify_api/clients/rest/admin.rb +14 -3
  23. data/lib/shopify_api/rest/base.rb +3 -1
  24. data/lib/shopify_api/rest/resources/2022_07/application_charge.rb +6 -1
  25. data/lib/shopify_api/rest/resources/2022_07/application_credit.rb +6 -1
  26. data/lib/shopify_api/rest/resources/2022_07/gift_card.rb +4 -4
  27. data/lib/shopify_api/rest/resources/2022_07/metafield.rb +2 -2
  28. data/lib/shopify_api/rest/resources/2022_07/order.rb +2 -2
  29. data/lib/shopify_api/rest/resources/2022_07/recurring_application_charge.rb +6 -1
  30. data/lib/shopify_api/rest/resources/2022_07/shipping_zone.rb +6 -6
  31. data/lib/shopify_api/rest/resources/2022_07/usage_charge.rb +6 -1
  32. data/lib/shopify_api/rest/resources/2022_10/application_charge.rb +6 -1
  33. data/lib/shopify_api/rest/resources/2022_10/application_credit.rb +6 -1
  34. data/lib/shopify_api/rest/resources/2022_10/gift_card.rb +4 -4
  35. data/lib/shopify_api/rest/resources/2022_10/metafield.rb +2 -2
  36. data/lib/shopify_api/rest/resources/2022_10/order.rb +2 -2
  37. data/lib/shopify_api/rest/resources/2022_10/recurring_application_charge.rb +6 -1
  38. data/lib/shopify_api/rest/resources/2022_10/shipping_zone.rb +6 -6
  39. data/lib/shopify_api/rest/resources/2022_10/usage_charge.rb +6 -1
  40. data/lib/shopify_api/rest/resources/2023_01/application_charge.rb +6 -1
  41. data/lib/shopify_api/rest/resources/2023_01/application_credit.rb +6 -1
  42. data/lib/shopify_api/rest/resources/2023_01/dispute_evidence.rb +117 -0
  43. data/lib/shopify_api/rest/resources/{2022_04/storefront_access_token.rb → 2023_01/dispute_file_upload.rb} +27 -33
  44. data/lib/shopify_api/rest/resources/2023_01/gift_card.rb +4 -4
  45. data/lib/shopify_api/rest/resources/2023_01/metafield.rb +2 -2
  46. data/lib/shopify_api/rest/resources/2023_01/order.rb +2 -2
  47. data/lib/shopify_api/rest/resources/2023_01/recurring_application_charge.rb +6 -1
  48. data/lib/shopify_api/rest/resources/2023_01/shipping_zone.rb +6 -6
  49. data/lib/shopify_api/rest/resources/2023_01/usage_charge.rb +6 -1
  50. data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/application_charge.rb +6 -1
  51. data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/application_credit.rb +6 -1
  52. data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/carrier_service.rb +0 -3
  53. data/lib/shopify_api/rest/resources/2023_04/dispute_evidence.rb +117 -0
  54. data/lib/shopify_api/rest/resources/{2022_04/android_pay_key.rb → 2023_04/dispute_file_upload.rb} +29 -25
  55. data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/fulfillment.rb +2 -49
  56. data/lib/shopify_api/rest/resources/{2022_04 → 2023_04}/fulfillment_order.rb +36 -8
  57. data/lib/shopify_api/rest/resources/{2022_04 → 2023_04}/fulfillment_service.rb +3 -3
  58. data/lib/shopify_api/rest/resources/{2022_04 → 2023_04}/gift_card.rb +4 -4
  59. data/lib/shopify_api/rest/resources/{2022_04 → 2023_04}/metafield.rb +2 -2
  60. data/lib/shopify_api/rest/resources/{2022_04 → 2023_04}/order.rb +14 -2
  61. data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/recurring_application_charge.rb +6 -1
  62. data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/shipping_zone.rb +6 -6
  63. data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/shop.rb +3 -0
  64. data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/transaction.rb +3 -0
  65. data/lib/shopify_api/rest/resources/{2022_04 → 2023_04}/usage_charge.rb +6 -1
  66. data/lib/shopify_api/version.rb +1 -1
  67. data/shopify_api.gemspec +1 -1
  68. metadata +85 -152
  69. data/lib/shopify_api/rest/resources/2022_01/android_pay_key.rb +0 -77
  70. data/lib/shopify_api/rest/resources/2022_01/customer.rb +0 -326
  71. data/lib/shopify_api/rest/resources/2022_01/fulfillment_order.rb +0 -281
  72. data/lib/shopify_api/rest/resources/2022_01/fulfillment_service.rb +0 -130
  73. data/lib/shopify_api/rest/resources/2022_01/gift_card.rb +0 -215
  74. data/lib/shopify_api/rest/resources/2022_01/metafield.rb +0 -349
  75. data/lib/shopify_api/rest/resources/2022_01/order.rb +0 -473
  76. data/lib/shopify_api/rest/resources/2022_01/price_rule.rb +0 -223
  77. data/lib/shopify_api/rest/resources/2022_01/usage_charge.rb +0 -97
  78. data/lib/shopify_api/rest/resources/2022_04/abandoned_checkout.rb +0 -190
  79. data/lib/shopify_api/rest/resources/2022_04/access_scope.rb +0 -58
  80. data/lib/shopify_api/rest/resources/2022_04/apple_pay_certificate.rb +0 -105
  81. data/lib/shopify_api/rest/resources/2022_04/application_charge.rb +0 -104
  82. data/lib/shopify_api/rest/resources/2022_04/application_credit.rb +0 -87
  83. data/lib/shopify_api/rest/resources/2022_04/article.rb +0 -265
  84. data/lib/shopify_api/rest/resources/2022_04/asset.rb +0 -118
  85. data/lib/shopify_api/rest/resources/2022_04/assigned_fulfillment_order.rb +0 -86
  86. data/lib/shopify_api/rest/resources/2022_04/balance.rb +0 -50
  87. data/lib/shopify_api/rest/resources/2022_04/blog.rb +0 -162
  88. data/lib/shopify_api/rest/resources/2022_04/cancellation_request.rb +0 -83
  89. data/lib/shopify_api/rest/resources/2022_04/carrier_service.rb +0 -116
  90. data/lib/shopify_api/rest/resources/2022_04/checkout.rb +0 -209
  91. data/lib/shopify_api/rest/resources/2022_04/collect.rb +0 -142
  92. data/lib/shopify_api/rest/resources/2022_04/collection.rb +0 -110
  93. data/lib/shopify_api/rest/resources/2022_04/collection_listing.rb +0 -155
  94. data/lib/shopify_api/rest/resources/2022_04/comment.rb +0 -283
  95. data/lib/shopify_api/rest/resources/2022_04/country.rb +0 -137
  96. data/lib/shopify_api/rest/resources/2022_04/currency.rb +0 -57
  97. data/lib/shopify_api/rest/resources/2022_04/custom_collection.rb +0 -187
  98. data/lib/shopify_api/rest/resources/2022_04/customer_address.rb +0 -201
  99. data/lib/shopify_api/rest/resources/2022_04/customer_saved_search.rb +0 -169
  100. data/lib/shopify_api/rest/resources/2022_04/deprecated_api_call.rb +0 -57
  101. data/lib/shopify_api/rest/resources/2022_04/discount_code.rb +0 -219
  102. data/lib/shopify_api/rest/resources/2022_04/dispute.rb +0 -111
  103. data/lib/shopify_api/rest/resources/2022_04/draft_order.rb +0 -275
  104. data/lib/shopify_api/rest/resources/2022_04/event.rb +0 -148
  105. data/lib/shopify_api/rest/resources/2022_04/fulfillment.rb +0 -272
  106. data/lib/shopify_api/rest/resources/2022_04/fulfillment_event.rb +0 -166
  107. data/lib/shopify_api/rest/resources/2022_04/fulfillment_request.rb +0 -87
  108. data/lib/shopify_api/rest/resources/2022_04/gift_card_adjustment.rb +0 -118
  109. data/lib/shopify_api/rest/resources/2022_04/image.rb +0 -157
  110. data/lib/shopify_api/rest/resources/2022_04/inventory_item.rb +0 -108
  111. data/lib/shopify_api/rest/resources/2022_04/inventory_level.rb +0 -179
  112. data/lib/shopify_api/rest/resources/2022_04/location.rb +0 -167
  113. data/lib/shopify_api/rest/resources/2022_04/locations_for_move.rb +0 -56
  114. data/lib/shopify_api/rest/resources/2022_04/marketing_event.rb +0 -209
  115. data/lib/shopify_api/rest/resources/2022_04/mobile_platform_application.rb +0 -110
  116. data/lib/shopify_api/rest/resources/2022_04/order_risk.rb +0 -135
  117. data/lib/shopify_api/rest/resources/2022_04/page.rb +0 -194
  118. data/lib/shopify_api/rest/resources/2022_04/payment.rb +0 -140
  119. data/lib/shopify_api/rest/resources/2022_04/payment_gateway.rb +0 -143
  120. data/lib/shopify_api/rest/resources/2022_04/payment_transaction.rb +0 -107
  121. data/lib/shopify_api/rest/resources/2022_04/payout.rb +0 -97
  122. data/lib/shopify_api/rest/resources/2022_04/policy.rb +0 -69
  123. data/lib/shopify_api/rest/resources/2022_04/product.rb +0 -223
  124. data/lib/shopify_api/rest/resources/2022_04/product_listing.rb +0 -196
  125. data/lib/shopify_api/rest/resources/2022_04/product_resource_feedback.rb +0 -88
  126. data/lib/shopify_api/rest/resources/2022_04/province.rb +0 -132
  127. data/lib/shopify_api/rest/resources/2022_04/recurring_application_charge.rb +0 -167
  128. data/lib/shopify_api/rest/resources/2022_04/redirect.rb +0 -139
  129. data/lib/shopify_api/rest/resources/2022_04/refund.rb +0 -151
  130. data/lib/shopify_api/rest/resources/2022_04/report.rb +0 -121
  131. data/lib/shopify_api/rest/resources/2022_04/resource_feedback.rb +0 -73
  132. data/lib/shopify_api/rest/resources/2022_04/script_tag.rb +0 -155
  133. data/lib/shopify_api/rest/resources/2022_04/shipping_zone.rb +0 -83
  134. data/lib/shopify_api/rest/resources/2022_04/shop.rb +0 -218
  135. data/lib/shopify_api/rest/resources/2022_04/smart_collection.rb +0 -216
  136. data/lib/shopify_api/rest/resources/2022_04/tender_transaction.rb +0 -93
  137. data/lib/shopify_api/rest/resources/2022_04/theme.rb +0 -120
  138. data/lib/shopify_api/rest/resources/2022_04/transaction.rb +0 -181
  139. data/lib/shopify_api/rest/resources/2022_04/user.rb +0 -138
  140. data/lib/shopify_api/rest/resources/2022_04/variant.rb +0 -212
  141. data/lib/shopify_api/rest/resources/2022_04/webhook.rb +0 -168
  142. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/abandoned_checkout.rb +0 -0
  143. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/access_scope.rb +0 -0
  144. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/apple_pay_certificate.rb +0 -0
  145. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/article.rb +0 -0
  146. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/asset.rb +0 -0
  147. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/assigned_fulfillment_order.rb +0 -0
  148. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/balance.rb +0 -0
  149. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/blog.rb +0 -0
  150. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/cancellation_request.rb +0 -0
  151. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/checkout.rb +0 -0
  152. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/collect.rb +0 -0
  153. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/collection.rb +0 -0
  154. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/collection_listing.rb +0 -0
  155. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/comment.rb +0 -0
  156. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/country.rb +0 -0
  157. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/currency.rb +0 -0
  158. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/custom_collection.rb +0 -0
  159. /data/lib/shopify_api/rest/resources/{2022_04 → 2023_04}/customer.rb +0 -0
  160. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/customer_address.rb +0 -0
  161. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/customer_saved_search.rb +0 -0
  162. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/deprecated_api_call.rb +0 -0
  163. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/discount_code.rb +0 -0
  164. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/dispute.rb +0 -0
  165. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/draft_order.rb +0 -0
  166. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/event.rb +0 -0
  167. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/fulfillment_event.rb +0 -0
  168. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/fulfillment_request.rb +0 -0
  169. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/gift_card_adjustment.rb +0 -0
  170. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/image.rb +0 -0
  171. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/inventory_item.rb +0 -0
  172. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/inventory_level.rb +0 -0
  173. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/location.rb +0 -0
  174. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/locations_for_move.rb +0 -0
  175. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/marketing_event.rb +0 -0
  176. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/mobile_platform_application.rb +0 -0
  177. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/order_risk.rb +0 -0
  178. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/page.rb +0 -0
  179. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/payment.rb +0 -0
  180. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/payment_gateway.rb +0 -0
  181. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/payment_transaction.rb +0 -0
  182. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/payout.rb +0 -0
  183. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/policy.rb +0 -0
  184. /data/lib/shopify_api/rest/resources/{2022_04 → 2023_04}/price_rule.rb +0 -0
  185. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/product.rb +0 -0
  186. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/product_listing.rb +0 -0
  187. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/product_resource_feedback.rb +0 -0
  188. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/province.rb +0 -0
  189. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/redirect.rb +0 -0
  190. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/refund.rb +0 -0
  191. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/report.rb +0 -0
  192. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/resource_feedback.rb +0 -0
  193. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/script_tag.rb +0 -0
  194. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/smart_collection.rb +0 -0
  195. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/storefront_access_token.rb +0 -0
  196. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/tender_transaction.rb +0 -0
  197. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/theme.rb +0 -0
  198. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/user.rb +0 -0
  199. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/variant.rb +0 -0
  200. /data/lib/shopify_api/rest/resources/{2022_01 → 2023_04}/webhook.rb +0 -0
@@ -1,130 +0,0 @@
1
- # typed: false
2
- # frozen_string_literal: true
3
-
4
- ########################################################################################################################
5
- # This file is auto-generated. If you have an issue, please create a GitHub issue. #
6
- ########################################################################################################################
7
-
8
- module ShopifyAPI
9
- class FulfillmentService < ShopifyAPI::Rest::Base
10
- extend T::Sig
11
-
12
- @prev_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
13
- @next_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
14
-
15
- sig { params(session: T.nilable(ShopifyAPI::Auth::Session)).void }
16
- def initialize(session: ShopifyAPI::Context.active_session)
17
- super(session: session)
18
-
19
- @admin_graphql_api_id = T.let(nil, T.nilable(String))
20
- @callback_url = T.let(nil, T.nilable(String))
21
- @format = T.let(nil, T.nilable(String))
22
- @fulfillment_orders_opt_in = T.let(nil, T.nilable(T::Boolean))
23
- @handle = T.let(nil, T.nilable(String))
24
- @id = T.let(nil, T.nilable(Integer))
25
- @inventory_management = T.let(nil, T.nilable(T::Boolean))
26
- @location_id = T.let(nil, T.nilable(Integer))
27
- @name = T.let(nil, T.nilable(String))
28
- @provider_id = T.let(nil, T.nilable(String))
29
- @requires_shipping_method = T.let(nil, T.nilable(T::Boolean))
30
- @tracking_support = T.let(nil, T.nilable(T::Boolean))
31
- end
32
-
33
- @has_one = T.let({}, T::Hash[Symbol, Class])
34
- @has_many = T.let({}, T::Hash[Symbol, Class])
35
- @paths = T.let([
36
- {http_method: :delete, operation: :delete, ids: [:id], path: "fulfillment_services/<id>.json"},
37
- {http_method: :get, operation: :get, ids: [], path: "fulfillment_services.json"},
38
- {http_method: :get, operation: :get, ids: [:id], path: "fulfillment_services/<id>.json"},
39
- {http_method: :post, operation: :post, ids: [], path: "fulfillment_services.json"},
40
- {http_method: :put, operation: :put, ids: [:id], path: "fulfillment_services/<id>.json"}
41
- ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
42
-
43
- sig { returns(T.nilable(String)) }
44
- attr_reader :admin_graphql_api_id
45
- sig { returns(T.nilable(String)) }
46
- attr_reader :callback_url
47
- sig { returns(T.nilable(String)) }
48
- attr_reader :format
49
- sig { returns(T.nilable(T::Boolean)) }
50
- attr_reader :fulfillment_orders_opt_in
51
- sig { returns(T.nilable(String)) }
52
- attr_reader :handle
53
- sig { returns(T.nilable(Integer)) }
54
- attr_reader :id
55
- sig { returns(T.nilable(T::Boolean)) }
56
- attr_reader :inventory_management
57
- sig { returns(T.nilable(Integer)) }
58
- attr_reader :location_id
59
- sig { returns(T.nilable(String)) }
60
- attr_reader :name
61
- sig { returns(T.nilable(String)) }
62
- attr_reader :provider_id
63
- sig { returns(T.nilable(T::Boolean)) }
64
- attr_reader :requires_shipping_method
65
- sig { returns(T.nilable(T::Boolean)) }
66
- attr_reader :tracking_support
67
-
68
- class << self
69
- sig do
70
- params(
71
- id: T.any(Integer, String),
72
- session: Auth::Session
73
- ).returns(T.nilable(FulfillmentService))
74
- end
75
- def find(
76
- id:,
77
- session: ShopifyAPI::Context.active_session
78
- )
79
- result = base_find(
80
- session: session,
81
- ids: {id: id},
82
- params: {},
83
- )
84
- T.cast(result[0], T.nilable(FulfillmentService))
85
- end
86
-
87
- sig do
88
- params(
89
- id: T.any(Integer, String),
90
- session: Auth::Session
91
- ).returns(T.untyped)
92
- end
93
- def delete(
94
- id:,
95
- session: ShopifyAPI::Context.active_session
96
- )
97
- request(
98
- http_method: :delete,
99
- operation: :delete,
100
- session: session,
101
- ids: {id: id},
102
- params: {},
103
- )
104
- end
105
-
106
- sig do
107
- params(
108
- scope: T.untyped,
109
- session: Auth::Session,
110
- kwargs: T.untyped
111
- ).returns(T::Array[FulfillmentService])
112
- end
113
- def all(
114
- scope: nil,
115
- session: ShopifyAPI::Context.active_session,
116
- **kwargs
117
- )
118
- response = base_find(
119
- session: session,
120
- ids: {},
121
- params: {scope: scope}.merge(kwargs).compact,
122
- )
123
-
124
- T.cast(response, T::Array[FulfillmentService])
125
- end
126
-
127
- end
128
-
129
- end
130
- end
@@ -1,215 +0,0 @@
1
- # typed: false
2
- # frozen_string_literal: true
3
-
4
- ########################################################################################################################
5
- # This file is auto-generated. If you have an issue, please create a GitHub issue. #
6
- ########################################################################################################################
7
-
8
- module ShopifyAPI
9
- class GiftCard < ShopifyAPI::Rest::Base
10
- extend T::Sig
11
-
12
- @prev_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
13
- @next_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
14
-
15
- sig { params(session: T.nilable(ShopifyAPI::Auth::Session)).void }
16
- def initialize(session: ShopifyAPI::Context.active_session)
17
- super(session: session)
18
-
19
- @api_client_id = T.let(nil, T.nilable(Integer))
20
- @balance = T.let(nil, T.nilable(Float))
21
- @code = T.let(nil, T.nilable(String))
22
- @created_at = T.let(nil, T.nilable(String))
23
- @currency = T.let(nil, T.nilable(String))
24
- @customer_id = T.let(nil, T.nilable(Integer))
25
- @disabled_at = T.let(nil, T.nilable(String))
26
- @expires_on = T.let(nil, T.nilable(String))
27
- @id = T.let(nil, T.nilable(Integer))
28
- @initial_value = T.let(nil, T.nilable(Float))
29
- @last_characters = T.let(nil, T.nilable(String))
30
- @line_item_id = T.let(nil, T.nilable(Integer))
31
- @note = T.let(nil, T.nilable(String))
32
- @order_id = T.let(nil, T.nilable(Integer))
33
- @template_suffix = T.let(nil, T.nilable(String))
34
- @updated_at = T.let(nil, T.nilable(String))
35
- @user_id = T.let(nil, T.nilable(Integer))
36
- end
37
-
38
- @has_one = T.let({}, T::Hash[Symbol, Class])
39
- @has_many = T.let({}, T::Hash[Symbol, Class])
40
- @paths = T.let([
41
- {http_method: :get, operation: :count, ids: [], path: "gift_cards/count.json"},
42
- {http_method: :get, operation: :get, ids: [], path: "gift_cards.json"},
43
- {http_method: :get, operation: :get, ids: [:id], path: "gift_cards/<id>.json"},
44
- {http_method: :get, operation: :search, ids: [], path: "gift_cards/search.json"},
45
- {http_method: :post, operation: :disable, ids: [:id], path: "gift_cards/<id>/disable.json"},
46
- {http_method: :post, operation: :post, ids: [], path: "gift_cards.json"},
47
- {http_method: :put, operation: :put, ids: [:id], path: "gift_cards/<id>.json"}
48
- ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
49
-
50
- sig { returns(T.nilable(Integer)) }
51
- attr_reader :api_client_id
52
- sig { returns(T.nilable(Float)) }
53
- attr_reader :balance
54
- sig { returns(T.nilable(String)) }
55
- attr_reader :code
56
- sig { returns(T.nilable(String)) }
57
- attr_reader :created_at
58
- sig { returns(T.nilable(String)) }
59
- attr_reader :currency
60
- sig { returns(T.nilable(Integer)) }
61
- attr_reader :customer_id
62
- sig { returns(T.nilable(String)) }
63
- attr_reader :disabled_at
64
- sig { returns(T.nilable(String)) }
65
- attr_reader :expires_on
66
- sig { returns(T.nilable(Integer)) }
67
- attr_reader :id
68
- sig { returns(T.nilable(Float)) }
69
- attr_reader :initial_value
70
- sig { returns(T.nilable(String)) }
71
- attr_reader :last_characters
72
- sig { returns(T.nilable(Integer)) }
73
- attr_reader :line_item_id
74
- sig { returns(T.nilable(String)) }
75
- attr_reader :note
76
- sig { returns(T.nilable(Integer)) }
77
- attr_reader :order_id
78
- sig { returns(T.nilable(String)) }
79
- attr_reader :template_suffix
80
- sig { returns(T.nilable(String)) }
81
- attr_reader :updated_at
82
- sig { returns(T.nilable(Integer)) }
83
- attr_reader :user_id
84
-
85
- class << self
86
- sig do
87
- params(
88
- id: T.any(Integer, String),
89
- session: Auth::Session
90
- ).returns(T.nilable(GiftCard))
91
- end
92
- def find(
93
- id:,
94
- session: ShopifyAPI::Context.active_session
95
- )
96
- result = base_find(
97
- session: session,
98
- ids: {id: id},
99
- params: {},
100
- )
101
- T.cast(result[0], T.nilable(GiftCard))
102
- end
103
-
104
- sig do
105
- params(
106
- status: T.untyped,
107
- limit: T.untyped,
108
- since_id: T.untyped,
109
- fields: T.untyped,
110
- session: Auth::Session,
111
- kwargs: T.untyped
112
- ).returns(T::Array[GiftCard])
113
- end
114
- def all(
115
- status: nil,
116
- limit: nil,
117
- since_id: nil,
118
- fields: nil,
119
- session: ShopifyAPI::Context.active_session,
120
- **kwargs
121
- )
122
- response = base_find(
123
- session: session,
124
- ids: {},
125
- params: {status: status, limit: limit, since_id: since_id, fields: fields}.merge(kwargs).compact,
126
- )
127
-
128
- T.cast(response, T::Array[GiftCard])
129
- end
130
-
131
- sig do
132
- params(
133
- status: T.untyped,
134
- session: Auth::Session,
135
- kwargs: T.untyped
136
- ).returns(T.untyped)
137
- end
138
- def count(
139
- status: nil,
140
- session: ShopifyAPI::Context.active_session,
141
- **kwargs
142
- )
143
- request(
144
- http_method: :get,
145
- operation: :count,
146
- session: session,
147
- ids: {},
148
- params: {status: status}.merge(kwargs).compact,
149
- body: {},
150
- entity: nil,
151
- )
152
- end
153
-
154
- sig do
155
- params(
156
- order: T.untyped,
157
- query: T.untyped,
158
- limit: T.untyped,
159
- fields: T.untyped,
160
- created_at_min: T.untyped,
161
- created_at_max: T.untyped,
162
- updated_at_min: T.untyped,
163
- updated_at_max: T.untyped,
164
- session: Auth::Session,
165
- kwargs: T.untyped
166
- ).returns(T.untyped)
167
- end
168
- def search(
169
- order: nil,
170
- query: nil,
171
- limit: nil,
172
- fields: nil,
173
- created_at_min: nil,
174
- created_at_max: nil,
175
- updated_at_min: nil,
176
- updated_at_max: nil,
177
- session: ShopifyAPI::Context.active_session,
178
- **kwargs
179
- )
180
- request(
181
- http_method: :get,
182
- operation: :search,
183
- session: session,
184
- ids: {},
185
- params: {order: order, query: query, limit: limit, fields: fields, created_at_min: created_at_min, created_at_max: created_at_max, updated_at_min: updated_at_min, updated_at_max: updated_at_max}.merge(kwargs).compact,
186
- body: {},
187
- entity: nil,
188
- )
189
- end
190
-
191
- end
192
-
193
- sig do
194
- params(
195
- body: T.untyped,
196
- kwargs: T.untyped
197
- ).returns(T.untyped)
198
- end
199
- def disable(
200
- body: nil,
201
- **kwargs
202
- )
203
- self.class.request(
204
- http_method: :post,
205
- operation: :disable,
206
- session: @session,
207
- ids: {id: @id},
208
- params: {}.merge(kwargs).compact,
209
- body: body,
210
- entity: self,
211
- )
212
- end
213
-
214
- end
215
- end