shopify_api 11.1.0 → 12.0.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 (116) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/close-waiting-for-response-issues.yml +20 -0
  3. data/.github/workflows/remove-labels-on-activity.yml +16 -0
  4. data/.github/workflows/stale.yml +31 -0
  5. data/CHANGELOG.md +7 -0
  6. data/Gemfile.lock +29 -27
  7. data/lib/shopify_api/admin_versions.rb +2 -2
  8. data/lib/shopify_api/auth/jwt_payload.rb +2 -2
  9. data/lib/shopify_api/auth/oauth/auth_query.rb +1 -1
  10. data/lib/shopify_api/auth/oauth.rb +5 -5
  11. data/lib/shopify_api/auth/session.rb +1 -1
  12. data/lib/shopify_api/clients/graphql/client.rb +3 -3
  13. data/lib/shopify_api/clients/graphql/storefront.rb +2 -2
  14. data/lib/shopify_api/clients/http_client.rb +1 -1
  15. data/lib/shopify_api/clients/rest/admin.rb +10 -10
  16. data/lib/shopify_api/rest/base.rb +3 -3
  17. data/lib/shopify_api/rest/resources/2022_01/abandoned_checkout.rb +4 -3
  18. data/lib/shopify_api/rest/resources/2022_01/customer.rb +26 -0
  19. data/lib/shopify_api/rest/resources/2022_01/draft_order.rb +3 -1
  20. data/lib/shopify_api/rest/resources/2022_01/fulfillment_request.rb +5 -1
  21. data/lib/shopify_api/rest/resources/2022_01/gift_card.rb +9 -1
  22. data/lib/shopify_api/rest/resources/2022_01/metafield.rb +12 -5
  23. data/lib/shopify_api/rest/resources/2022_04/abandoned_checkout.rb +4 -3
  24. data/lib/shopify_api/rest/resources/2022_04/customer.rb +26 -0
  25. data/lib/shopify_api/rest/resources/2022_04/draft_order.rb +3 -1
  26. data/lib/shopify_api/rest/resources/2022_04/fulfillment_request.rb +5 -1
  27. data/lib/shopify_api/rest/resources/2022_04/gift_card.rb +9 -1
  28. data/lib/shopify_api/rest/resources/2022_04/metafield.rb +8 -8
  29. data/lib/shopify_api/rest/resources/2022_07/abandoned_checkout.rb +4 -3
  30. data/lib/shopify_api/rest/resources/2022_07/customer.rb +20 -0
  31. data/lib/shopify_api/rest/resources/2022_07/dispute_evidence.rb +2 -2
  32. data/lib/shopify_api/rest/resources/2022_07/gift_card.rb +9 -1
  33. data/lib/shopify_api/rest/resources/2022_07/metafield.rb +8 -8
  34. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/abandoned_checkout.rb +4 -3
  35. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/access_scope.rb +0 -0
  36. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/android_pay_key.rb +0 -0
  37. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/apple_pay_certificate.rb +0 -0
  38. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/application_charge.rb +0 -0
  39. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/application_credit.rb +0 -0
  40. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/article.rb +0 -0
  41. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/asset.rb +0 -0
  42. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/assigned_fulfillment_order.rb +0 -0
  43. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/balance.rb +0 -0
  44. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/blog.rb +0 -0
  45. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/cancellation_request.rb +0 -0
  46. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/carrier_service.rb +0 -3
  47. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/checkout.rb +0 -0
  48. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/collect.rb +0 -0
  49. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/collection.rb +0 -0
  50. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/collection_listing.rb +0 -0
  51. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/comment.rb +0 -0
  52. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/country.rb +0 -0
  53. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/currency.rb +0 -0
  54. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/custom_collection.rb +0 -0
  55. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/customer.rb +29 -0
  56. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/customer_address.rb +0 -0
  57. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/customer_saved_search.rb +0 -0
  58. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/deprecated_api_call.rb +0 -0
  59. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/discount_code.rb +0 -0
  60. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/dispute.rb +0 -0
  61. data/lib/shopify_api/rest/resources/2022_10/dispute_evidence.rb +117 -0
  62. data/lib/shopify_api/rest/resources/2022_10/dispute_file_upload.rb +81 -0
  63. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/draft_order.rb +3 -1
  64. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/event.rb +0 -0
  65. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/fulfillment.rb +2 -49
  66. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/fulfillment_event.rb +0 -0
  67. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/fulfillment_order.rb +30 -1
  68. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/fulfillment_request.rb +5 -1
  69. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/fulfillment_service.rb +3 -3
  70. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/gift_card.rb +9 -1
  71. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/gift_card_adjustment.rb +0 -0
  72. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/image.rb +0 -0
  73. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/inventory_item.rb +0 -0
  74. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/inventory_level.rb +0 -0
  75. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/location.rb +0 -0
  76. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/locations_for_move.rb +0 -0
  77. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/marketing_event.rb +0 -0
  78. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/metafield.rb +8 -8
  79. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/mobile_platform_application.rb +0 -0
  80. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/order.rb +3 -0
  81. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/order_risk.rb +0 -0
  82. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/page.rb +0 -0
  83. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/payment.rb +0 -0
  84. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/payment_gateway.rb +0 -0
  85. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/payment_transaction.rb +0 -0
  86. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/payout.rb +0 -0
  87. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/policy.rb +0 -0
  88. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/price_rule.rb +3 -3
  89. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/product.rb +0 -0
  90. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/product_listing.rb +0 -0
  91. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/product_resource_feedback.rb +0 -0
  92. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/province.rb +0 -0
  93. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/recurring_application_charge.rb +0 -0
  94. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/redirect.rb +0 -0
  95. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/refund.rb +0 -0
  96. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/report.rb +0 -0
  97. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/resource_feedback.rb +0 -0
  98. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/script_tag.rb +0 -0
  99. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/shipping_zone.rb +0 -0
  100. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/shop.rb +3 -0
  101. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/smart_collection.rb +0 -0
  102. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/storefront_access_token.rb +0 -0
  103. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/tender_transaction.rb +0 -0
  104. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/theme.rb +0 -0
  105. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/transaction.rb +0 -0
  106. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/usage_charge.rb +0 -0
  107. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/user.rb +0 -0
  108. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/variant.rb +0 -0
  109. data/lib/shopify_api/rest/resources/{2021_10 → 2022_10}/webhook.rb +0 -0
  110. data/lib/shopify_api/utils/graphql_proxy.rb +2 -2
  111. data/lib/shopify_api/utils/session_utils.rb +5 -5
  112. data/lib/shopify_api/version.rb +1 -1
  113. data/lib/shopify_api/webhooks/registrations/http.rb +7 -1
  114. data/lib/shopify_api/webhooks/registry.rb +8 -8
  115. data/service.yml +0 -1
  116. metadata +81 -76
@@ -65,6 +65,7 @@ module ShopifyAPI
65
65
  discount_codes: DiscountCode
66
66
  }, T::Hash[Symbol, Class])
67
67
  @paths = T.let([
68
+ {http_method: :get, operation: :checkouts, ids: [], path: "checkouts.json"},
68
69
  {http_method: :get, operation: :checkouts, ids: [], path: "checkouts.json"}
69
70
  ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
70
71
 
@@ -150,25 +151,25 @@ module ShopifyAPI
150
151
  class << self
151
152
  sig do
152
153
  params(
153
- limit: T.untyped,
154
154
  since_id: T.untyped,
155
155
  created_at_min: T.untyped,
156
156
  created_at_max: T.untyped,
157
157
  updated_at_min: T.untyped,
158
158
  updated_at_max: T.untyped,
159
159
  status: T.untyped,
160
+ limit: T.untyped,
160
161
  session: Auth::Session,
161
162
  kwargs: T.untyped
162
163
  ).returns(T.untyped)
163
164
  end
164
165
  def checkouts(
165
- limit: nil,
166
166
  since_id: nil,
167
167
  created_at_min: nil,
168
168
  created_at_max: nil,
169
169
  updated_at_min: nil,
170
170
  updated_at_max: nil,
171
171
  status: nil,
172
+ limit: nil,
172
173
  session: ShopifyAPI::Context.active_session,
173
174
  **kwargs
174
175
  )
@@ -177,7 +178,7 @@ module ShopifyAPI
177
178
  operation: :checkouts,
178
179
  session: session,
179
180
  ids: {},
180
- params: {limit: limit, since_id: since_id, created_at_min: created_at_min, created_at_max: created_at_max, updated_at_min: updated_at_min, updated_at_max: updated_at_max, status: status}.merge(kwargs).compact,
181
+ params: {since_id: since_id, created_at_min: created_at_min, created_at_max: created_at_max, updated_at_min: updated_at_min, updated_at_max: updated_at_max, status: status, limit: limit}.merge(kwargs).compact,
181
182
  body: {},
182
183
  entity: nil,
183
184
  )
@@ -20,7 +20,6 @@ module ShopifyAPI
20
20
  @admin_graphql_api_id = T.let(nil, T.nilable(String))
21
21
  @callback_url = T.let(nil, T.nilable(String))
22
22
  @carrier_service_type = T.let(nil, T.nilable(String))
23
- @format = T.let(nil, T.nilable(String))
24
23
  @id = T.let(nil, T.nilable(Integer))
25
24
  @name = T.let(nil, T.nilable(String))
26
25
  @service_discovery = T.let(nil, T.nilable(T::Boolean))
@@ -44,8 +43,6 @@ module ShopifyAPI
44
43
  attr_reader :callback_url
45
44
  sig { returns(T.nilable(String)) }
46
45
  attr_reader :carrier_service_type
47
- sig { returns(T.nilable(String)) }
48
- attr_reader :format
49
46
  sig { returns(T.nilable(Integer)) }
50
47
  attr_reader :id
51
48
  sig { returns(T.nilable(String)) }
@@ -23,6 +23,7 @@ module ShopifyAPI
23
23
  @currency = T.let(nil, T.nilable(String))
24
24
  @default_address = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
25
25
  @email = T.let(nil, T.nilable(String))
26
+ @email_marketing_consent = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
26
27
  @first_name = T.let(nil, T.nilable(String))
27
28
  @id = T.let(nil, T.nilable(Integer))
28
29
  @last_name = T.let(nil, T.nilable(String))
@@ -33,6 +34,8 @@ module ShopifyAPI
33
34
  @multipass_identifier = T.let(nil, T.nilable(String))
34
35
  @note = T.let(nil, T.nilable(String))
35
36
  @orders_count = T.let(nil, T.nilable(Integer))
37
+ @password = T.let(nil, T.nilable(String))
38
+ @password_confirmation = T.let(nil, T.nilable(String))
36
39
  @phone = T.let(nil, T.nilable(String))
37
40
  @sms_marketing_consent = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
38
41
  @state = T.let(nil, T.nilable(String))
@@ -49,6 +52,7 @@ module ShopifyAPI
49
52
  }, T::Hash[Symbol, Class])
50
53
  @has_many = T.let({}, T::Hash[Symbol, Class])
51
54
  @paths = T.let([
55
+ {http_method: :delete, operation: :delete, ids: [:id], path: "customers/<id>.json"},
52
56
  {http_method: :get, operation: :count, ids: [], path: "customers/count.json"},
53
57
  {http_method: :get, operation: :get, ids: [], path: "customers.json"},
54
58
  {http_method: :get, operation: :get, ids: [:id], path: "customers/<id>.json"},
@@ -74,6 +78,8 @@ module ShopifyAPI
74
78
  attr_reader :default_address
75
79
  sig { returns(T.nilable(String)) }
76
80
  attr_reader :email
81
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
82
+ attr_reader :email_marketing_consent
77
83
  sig { returns(T.nilable(String)) }
78
84
  attr_reader :first_name
79
85
  sig { returns(T.nilable(Integer)) }
@@ -95,6 +101,10 @@ module ShopifyAPI
95
101
  sig { returns(T.nilable(Integer)) }
96
102
  attr_reader :orders_count
97
103
  sig { returns(T.nilable(String)) }
104
+ attr_reader :password
105
+ sig { returns(T.nilable(String)) }
106
+ attr_reader :password_confirmation
107
+ sig { returns(T.nilable(String)) }
98
108
  attr_reader :phone
99
109
  sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
100
110
  attr_reader :sms_marketing_consent
@@ -134,6 +144,25 @@ module ShopifyAPI
134
144
  T.cast(result[0], T.nilable(Customer))
135
145
  end
136
146
 
147
+ sig do
148
+ params(
149
+ id: T.any(Integer, String),
150
+ session: Auth::Session
151
+ ).returns(T.untyped)
152
+ end
153
+ def delete(
154
+ id:,
155
+ session: ShopifyAPI::Context.active_session
156
+ )
157
+ request(
158
+ http_method: :delete,
159
+ operation: :delete,
160
+ session: session,
161
+ ids: {id: id},
162
+ params: {},
163
+ )
164
+ end
165
+
137
166
  sig do
138
167
  params(
139
168
  ids: T.untyped,
@@ -0,0 +1,117 @@
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 DisputeEvidence < 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
+ @access_activity_log = T.let(nil, T.nilable(String))
20
+ @billing_address = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
21
+ @cancellation_policy_disclosure = T.let(nil, T.nilable(String))
22
+ @cancellation_rebuttal = T.let(nil, T.nilable(String))
23
+ @created_at = T.let(nil, T.nilable(String))
24
+ @customer_email_address = T.let(nil, T.nilable(String))
25
+ @customer_first_name = T.let(nil, T.nilable(String))
26
+ @customer_last_name = T.let(nil, T.nilable(String))
27
+ @dispute_evidence_files = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
28
+ @fulfillments = T.let(nil, T.nilable(T::Array[T.untyped]))
29
+ @id = T.let(nil, T.nilable(Integer))
30
+ @payments_dispute_id = T.let(nil, T.nilable(Integer))
31
+ @product_description = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
32
+ @refund_policy_disclosure = T.let(nil, T.nilable(String))
33
+ @refund_refusal_explanation = T.let(nil, T.nilable(String))
34
+ @shipping_address = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
35
+ @submitted = T.let(nil, T.nilable(T::Boolean))
36
+ @uncategorized_text = T.let(nil, T.nilable(String))
37
+ @updated_on = T.let(nil, T.nilable(String))
38
+ end
39
+
40
+ @has_one = T.let({}, T::Hash[Symbol, Class])
41
+ @has_many = T.let({
42
+ fulfillments: Fulfillment
43
+ }, T::Hash[Symbol, Class])
44
+ @paths = T.let([
45
+ {http_method: :get, operation: :get, ids: [:dispute_id], path: "shopify_payments/disputes/<dispute_id>/dispute_evidences.json"},
46
+ {http_method: :put, operation: :put, ids: [:dispute_id], path: "shopify_payments/disputes/<dispute_id>/dispute_evidences.json"}
47
+ ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
48
+
49
+ sig { returns(T.nilable(String)) }
50
+ attr_reader :access_activity_log
51
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
52
+ attr_reader :billing_address
53
+ sig { returns(T.nilable(String)) }
54
+ attr_reader :cancellation_policy_disclosure
55
+ sig { returns(T.nilable(String)) }
56
+ attr_reader :cancellation_rebuttal
57
+ sig { returns(T.nilable(String)) }
58
+ attr_reader :created_at
59
+ sig { returns(T.nilable(String)) }
60
+ attr_reader :customer_email_address
61
+ sig { returns(T.nilable(String)) }
62
+ attr_reader :customer_first_name
63
+ sig { returns(T.nilable(String)) }
64
+ attr_reader :customer_last_name
65
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
66
+ attr_reader :dispute_evidence_files
67
+ sig { returns(T.nilable(T::Array[Fulfillment])) }
68
+ attr_reader :fulfillments
69
+ sig { returns(T.nilable(Integer)) }
70
+ attr_reader :id
71
+ sig { returns(T.nilable(Integer)) }
72
+ attr_reader :payments_dispute_id
73
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
74
+ attr_reader :product_description
75
+ sig { returns(T.nilable(String)) }
76
+ attr_reader :refund_policy_disclosure
77
+ sig { returns(T.nilable(String)) }
78
+ attr_reader :refund_refusal_explanation
79
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
80
+ attr_reader :shipping_address
81
+ sig { returns(T.nilable(T::Boolean)) }
82
+ attr_reader :submitted
83
+ sig { returns(T.nilable(String)) }
84
+ attr_reader :uncategorized_text
85
+ sig { returns(T.nilable(String)) }
86
+ attr_reader :updated_on
87
+
88
+ class << self
89
+ sig do
90
+ returns(String)
91
+ end
92
+ def primary_key()
93
+ "dispute_id"
94
+ end
95
+
96
+ sig do
97
+ params(
98
+ dispute_id: T.any(Integer, String),
99
+ session: Auth::Session
100
+ ).returns(T.nilable(DisputeEvidence))
101
+ end
102
+ def find(
103
+ dispute_id:,
104
+ session: ShopifyAPI::Context.active_session
105
+ )
106
+ result = base_find(
107
+ session: session,
108
+ ids: {dispute_id: dispute_id},
109
+ params: {},
110
+ )
111
+ T.cast(result[0], T.nilable(DisputeEvidence))
112
+ end
113
+
114
+ end
115
+
116
+ end
117
+ end
@@ -0,0 +1,81 @@
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 DisputeFileUpload < 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
+ @dispute_evidence_id = T.let(nil, T.nilable(Integer))
20
+ @dispute_evidence_type = T.let(nil, T.nilable(String))
21
+ @file_size = T.let(nil, T.nilable(Integer))
22
+ @file_type = T.let(nil, T.nilable(String))
23
+ @filename = T.let(nil, T.nilable(String))
24
+ @id = T.let(nil, T.nilable(Integer))
25
+ @original_filename = T.let(nil, T.nilable(String))
26
+ @shop_id = T.let(nil, T.nilable(Integer))
27
+ @url = T.let(nil, T.nilable(String))
28
+ end
29
+
30
+ @has_one = T.let({}, T::Hash[Symbol, Class])
31
+ @has_many = T.let({}, T::Hash[Symbol, Class])
32
+ @paths = T.let([
33
+ {http_method: :delete, operation: :delete, ids: [:dispute_id, :id], path: "shopify_payments/disputes/<dispute_id>/dispute_file_uploads/<id>.json"},
34
+ {http_method: :post, operation: :post, ids: [:dispute_id], path: "shopify_payments/disputes/<dispute_id>/dispute_file_uploads.json"}
35
+ ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
36
+
37
+ sig { returns(T.nilable(Integer)) }
38
+ attr_reader :dispute_evidence_id
39
+ sig { returns(T.nilable(String)) }
40
+ attr_reader :dispute_evidence_type
41
+ sig { returns(T.nilable(Integer)) }
42
+ attr_reader :file_size
43
+ sig { returns(T.nilable(String)) }
44
+ attr_reader :file_type
45
+ sig { returns(T.nilable(String)) }
46
+ attr_reader :filename
47
+ sig { returns(T.nilable(Integer)) }
48
+ attr_reader :id
49
+ sig { returns(T.nilable(String)) }
50
+ attr_reader :original_filename
51
+ sig { returns(T.nilable(Integer)) }
52
+ attr_reader :shop_id
53
+ sig { returns(T.nilable(String)) }
54
+ attr_reader :url
55
+
56
+ class << self
57
+ sig do
58
+ params(
59
+ id: T.any(Integer, String),
60
+ dispute_id: T.nilable(T.any(Integer, String)),
61
+ session: Auth::Session
62
+ ).returns(T.untyped)
63
+ end
64
+ def delete(
65
+ id:,
66
+ dispute_id: nil,
67
+ session: ShopifyAPI::Context.active_session
68
+ )
69
+ request(
70
+ http_method: :delete,
71
+ operation: :delete,
72
+ session: session,
73
+ ids: {id: id, dispute_id: dispute_id},
74
+ params: {},
75
+ )
76
+ end
77
+
78
+ end
79
+
80
+ end
81
+ end
@@ -248,12 +248,14 @@ module ShopifyAPI
248
248
 
249
249
  sig do
250
250
  params(
251
+ payment_gateway_id: T.untyped,
251
252
  payment_pending: T.untyped,
252
253
  body: T.untyped,
253
254
  kwargs: T.untyped
254
255
  ).returns(T.untyped)
255
256
  end
256
257
  def complete(
258
+ payment_gateway_id: nil,
257
259
  payment_pending: nil,
258
260
  body: nil,
259
261
  **kwargs
@@ -263,7 +265,7 @@ module ShopifyAPI
263
265
  operation: :complete,
264
266
  session: @session,
265
267
  ids: {id: @id},
266
- params: {payment_pending: payment_pending}.merge(kwargs).compact,
268
+ params: {payment_gateway_id: payment_gateway_id, payment_pending: payment_pending}.merge(kwargs).compact,
267
269
  body: body,
268
270
  entity: self,
269
271
  )
@@ -43,13 +43,8 @@ module ShopifyAPI
43
43
  {http_method: :get, operation: :get, ids: [:order_id], path: "orders/<order_id>/fulfillments.json"},
44
44
  {http_method: :get, operation: :get, ids: [:order_id, :id], path: "orders/<order_id>/fulfillments/<id>.json"},
45
45
  {http_method: :post, operation: :cancel, ids: [:id], path: "fulfillments/<id>/cancel.json"},
46
- {http_method: :post, operation: :cancel, ids: [:order_id, :id], path: "orders/<order_id>/fulfillments/<id>/cancel.json"},
47
- {http_method: :post, operation: :complete, ids: [:order_id, :id], path: "orders/<order_id>/fulfillments/<id>/complete.json"},
48
- {http_method: :post, operation: :open, ids: [:order_id, :id], path: "orders/<order_id>/fulfillments/<id>/open.json"},
49
46
  {http_method: :post, operation: :post, ids: [], path: "fulfillments.json"},
50
- {http_method: :post, operation: :post, ids: [:order_id], path: "orders/<order_id>/fulfillments.json"},
51
- {http_method: :post, operation: :update_tracking, ids: [:id], path: "fulfillments/<id>/update_tracking.json"},
52
- {http_method: :put, operation: :put, ids: [:order_id, :id], path: "orders/<order_id>/fulfillments/<id>.json"}
47
+ {http_method: :post, operation: :update_tracking, ids: [:id], path: "fulfillments/<id>/update_tracking.json"}
53
48
  ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
54
49
 
55
50
  sig { returns(T.nilable(String)) }
@@ -194,49 +189,7 @@ module ShopifyAPI
194
189
  http_method: :post,
195
190
  operation: :cancel,
196
191
  session: @session,
197
- ids: {id: @id, order_id: @order_id},
198
- params: {}.merge(kwargs).compact,
199
- body: body,
200
- entity: self,
201
- )
202
- end
203
-
204
- sig do
205
- params(
206
- body: T.untyped,
207
- kwargs: T.untyped
208
- ).returns(T.untyped)
209
- end
210
- def complete(
211
- body: nil,
212
- **kwargs
213
- )
214
- self.class.request(
215
- http_method: :post,
216
- operation: :complete,
217
- session: @session,
218
- ids: {id: @id, order_id: @order_id},
219
- params: {}.merge(kwargs).compact,
220
- body: body,
221
- entity: self,
222
- )
223
- end
224
-
225
- sig do
226
- params(
227
- body: T.untyped,
228
- kwargs: T.untyped
229
- ).returns(T.untyped)
230
- end
231
- def open(
232
- body: nil,
233
- **kwargs
234
- )
235
- self.class.request(
236
- http_method: :post,
237
- operation: :open,
238
- session: @session,
239
- ids: {id: @id, order_id: @order_id},
192
+ ids: {id: @id},
240
193
  params: {}.merge(kwargs).compact,
241
194
  body: body,
242
195
  entity: self,
@@ -21,6 +21,7 @@ module ShopifyAPI
21
21
  @delivery_method = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
22
22
  @destination = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
23
23
  @fulfill_at = T.let(nil, T.nilable(String))
24
+ @fulfill_by = T.let(nil, T.nilable(String))
24
25
  @fulfillment_holds = T.let(nil, T.nilable(T::Array[T.untyped]))
25
26
  @id = T.let(nil, T.nilable(Integer))
26
27
  @international_duties = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
@@ -44,7 +45,8 @@ module ShopifyAPI
44
45
  {http_method: :post, operation: :move, ids: [:id], path: "fulfillment_orders/<id>/move.json"},
45
46
  {http_method: :post, operation: :open, ids: [:id], path: "fulfillment_orders/<id>/open.json"},
46
47
  {http_method: :post, operation: :release_hold, ids: [:id], path: "fulfillment_orders/<id>/release_hold.json"},
47
- {http_method: :post, operation: :reschedule, ids: [:id], path: "fulfillment_orders/<id>/reschedule.json"}
48
+ {http_method: :post, operation: :reschedule, ids: [:id], path: "fulfillment_orders/<id>/reschedule.json"},
49
+ {http_method: :post, operation: :set_fulfillment_orders_deadline, ids: [], path: "fulfillment_orders/set_fulfillment_orders_deadline.json"}
48
50
  ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
49
51
 
50
52
  sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
@@ -57,6 +59,8 @@ module ShopifyAPI
57
59
  attr_reader :destination
58
60
  sig { returns(T.nilable(String)) }
59
61
  attr_reader :fulfill_at
62
+ sig { returns(T.nilable(String)) }
63
+ attr_reader :fulfill_by
60
64
  sig { returns(T.nilable(T::Array[T::Hash[T.untyped, T.untyped]])) }
61
65
  attr_reader :fulfillment_holds
62
66
  sig { returns(T.nilable(Integer)) }
@@ -277,5 +281,30 @@ module ShopifyAPI
277
281
  )
278
282
  end
279
283
 
284
+ sig do
285
+ params(
286
+ fulfillment_order_ids: T.untyped,
287
+ fulfillment_deadline: T.untyped,
288
+ body: T.untyped,
289
+ kwargs: T.untyped
290
+ ).returns(T.untyped)
291
+ end
292
+ def set_fulfillment_orders_deadline(
293
+ fulfillment_order_ids: nil,
294
+ fulfillment_deadline: nil,
295
+ body: nil,
296
+ **kwargs
297
+ )
298
+ self.class.request(
299
+ http_method: :post,
300
+ operation: :set_fulfillment_orders_deadline,
301
+ session: @session,
302
+ ids: {},
303
+ params: {fulfillment_order_ids: fulfillment_order_ids, fulfillment_deadline: fulfillment_deadline}.merge(kwargs).compact,
304
+ body: body,
305
+ entity: self,
306
+ )
307
+ end
308
+
280
309
  end
281
310
  end
@@ -59,12 +59,16 @@ module ShopifyAPI
59
59
  sig do
60
60
  params(
61
61
  message: T.untyped,
62
+ reason: T.untyped,
63
+ line_items: T.untyped,
62
64
  body: T.untyped,
63
65
  kwargs: T.untyped
64
66
  ).returns(T.untyped)
65
67
  end
66
68
  def reject(
67
69
  message: nil,
70
+ reason: nil,
71
+ line_items: nil,
68
72
  body: nil,
69
73
  **kwargs
70
74
  )
@@ -73,7 +77,7 @@ module ShopifyAPI
73
77
  operation: :reject,
74
78
  session: @session,
75
79
  ids: {fulfillment_order_id: @fulfillment_order_id},
76
- params: {message: message}.merge(kwargs).compact,
80
+ params: {message: message, reason: reason, line_items: line_items}.merge(kwargs).compact,
77
81
  body: body,
78
82
  entity: self,
79
83
  )
@@ -18,13 +18,13 @@ module ShopifyAPI
18
18
 
19
19
  @admin_graphql_api_id = T.let(nil, T.nilable(String))
20
20
  @callback_url = T.let(nil, T.nilable(String))
21
- @format = T.let(nil, T.nilable(String))
22
21
  @fulfillment_orders_opt_in = T.let(nil, T.nilable(T::Boolean))
23
22
  @handle = T.let(nil, T.nilable(String))
24
23
  @id = T.let(nil, T.nilable(Integer))
25
24
  @inventory_management = T.let(nil, T.nilable(T::Boolean))
26
25
  @location_id = T.let(nil, T.nilable(Integer))
27
26
  @name = T.let(nil, T.nilable(String))
27
+ @permits_sku_sharing = T.let(nil, T.nilable(T::Boolean))
28
28
  @provider_id = T.let(nil, T.nilable(String))
29
29
  @requires_shipping_method = T.let(nil, T.nilable(T::Boolean))
30
30
  @tracking_support = T.let(nil, T.nilable(T::Boolean))
@@ -44,8 +44,6 @@ module ShopifyAPI
44
44
  attr_reader :admin_graphql_api_id
45
45
  sig { returns(T.nilable(String)) }
46
46
  attr_reader :callback_url
47
- sig { returns(T.nilable(String)) }
48
- attr_reader :format
49
47
  sig { returns(T.nilable(T::Boolean)) }
50
48
  attr_reader :fulfillment_orders_opt_in
51
49
  sig { returns(T.nilable(String)) }
@@ -58,6 +56,8 @@ module ShopifyAPI
58
56
  attr_reader :location_id
59
57
  sig { returns(T.nilable(String)) }
60
58
  attr_reader :name
59
+ sig { returns(T.nilable(T::Boolean)) }
60
+ attr_reader :permits_sku_sharing
61
61
  sig { returns(T.nilable(String)) }
62
62
  attr_reader :provider_id
63
63
  sig { returns(T.nilable(T::Boolean)) }
@@ -157,6 +157,10 @@ module ShopifyAPI
157
157
  query: T.untyped,
158
158
  limit: T.untyped,
159
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,
160
164
  session: Auth::Session,
161
165
  kwargs: T.untyped
162
166
  ).returns(T.untyped)
@@ -166,6 +170,10 @@ module ShopifyAPI
166
170
  query: nil,
167
171
  limit: nil,
168
172
  fields: nil,
173
+ created_at_min: nil,
174
+ created_at_max: nil,
175
+ updated_at_min: nil,
176
+ updated_at_max: nil,
169
177
  session: ShopifyAPI::Context.active_session,
170
178
  **kwargs
171
179
  )
@@ -174,7 +182,7 @@ module ShopifyAPI
174
182
  operation: :search,
175
183
  session: session,
176
184
  ids: {},
177
- params: {order: order, query: query, limit: limit, fields: fields}.merge(kwargs).compact,
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,
178
186
  body: {},
179
187
  entity: nil,
180
188
  )