patch_ruby 1.9.0 → 1.11.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 (72) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/Gemfile +1 -2
  4. data/Gemfile.lock +40 -44
  5. data/Makefile +2 -2
  6. data/lib/patch_ruby/api/estimates_api.rb +33 -25
  7. data/lib/patch_ruby/api/orders_api.rb +21 -16
  8. data/lib/patch_ruby/api/preferences_api.rb +17 -13
  9. data/lib/patch_ruby/api/projects_api.rb +9 -7
  10. data/lib/patch_ruby/api_client.rb +51 -49
  11. data/lib/patch_ruby/api_error.rb +1 -1
  12. data/lib/patch_ruby/configuration.rb +38 -9
  13. data/lib/patch_ruby/models/allocation.rb +21 -11
  14. data/lib/patch_ruby/models/create_bitcoin_estimate_request.rb +25 -19
  15. data/lib/patch_ruby/models/create_ethereum_estimate_request.rb +26 -21
  16. data/lib/patch_ruby/models/create_flight_estimate_request.rb +323 -0
  17. data/lib/patch_ruby/models/create_mass_estimate_request.rb +22 -13
  18. data/lib/patch_ruby/models/create_order_request.rb +21 -11
  19. data/lib/patch_ruby/models/create_preference_request.rb +21 -11
  20. data/lib/patch_ruby/models/create_shipping_estimate_request.rb +371 -0
  21. data/lib/patch_ruby/models/create_success_response.rb +247 -0
  22. data/lib/patch_ruby/models/create_vehicle_estimate_request.rb +326 -0
  23. data/lib/patch_ruby/models/error_response.rb +22 -13
  24. data/lib/patch_ruby/models/estimate.rb +22 -13
  25. data/lib/patch_ruby/models/estimate_list_response.rb +22 -13
  26. data/lib/patch_ruby/models/estimate_response.rb +22 -13
  27. data/lib/patch_ruby/models/meta_index_object.rb +23 -15
  28. data/lib/patch_ruby/models/order.rb +23 -15
  29. data/lib/patch_ruby/models/order_list_response.rb +22 -13
  30. data/lib/patch_ruby/models/order_response.rb +22 -13
  31. data/lib/patch_ruby/models/photo.rb +21 -11
  32. data/lib/patch_ruby/models/preference.rb +21 -11
  33. data/lib/patch_ruby/models/preference_list_response.rb +22 -13
  34. data/lib/patch_ruby/models/preference_response.rb +22 -13
  35. data/lib/patch_ruby/models/project.rb +24 -17
  36. data/lib/patch_ruby/models/project_list_response.rb +22 -13
  37. data/lib/patch_ruby/models/project_response.rb +22 -13
  38. data/lib/patch_ruby/models/sdg.rb +21 -11
  39. data/lib/patch_ruby/models/standard.rb +21 -11
  40. data/lib/patch_ruby/version.rb +2 -2
  41. data/lib/patch_ruby.rb +5 -1
  42. data/patch_ruby.gemspec +8 -3
  43. data/spec/api_client_spec.rb +34 -13
  44. data/spec/configuration_spec.rb +1 -1
  45. data/spec/integration/estimates_spec.rb +17 -1
  46. data/spec/integration/preferences_spec.rb +1 -1
  47. data/spec/models/create_mass_estimate_request_spec.rb +1 -1
  48. data/spec/models/error_response_spec.rb +1 -1
  49. data/spec/models/estimate_list_response_spec.rb +1 -1
  50. data/spec/models/estimate_response_spec.rb +1 -1
  51. data/spec/models/estimate_spec.rb +1 -1
  52. data/spec/models/meta_index_object_spec.rb +1 -1
  53. data/spec/models/order_list_response_spec.rb +1 -1
  54. data/spec/models/order_response_spec.rb +1 -1
  55. data/spec/models/order_spec.rb +1 -1
  56. data/spec/models/preference_list_response_spec.rb +1 -1
  57. data/spec/models/preference_response_spec.rb +1 -1
  58. data/spec/models/project_list_response_spec.rb +1 -1
  59. data/spec/models/project_response_spec.rb +1 -1
  60. data/spec/models/project_spec.rb +1 -1
  61. data/spec/spec_helper.rb +69 -61
  62. metadata +56 -58
  63. data/lib/patch_ruby/.api_client.rb.un~ +0 -0
  64. data/lib/patch_ruby/.configuration.rb.un~ +0 -0
  65. data/lib/patch_ruby/.version.rb.un~ +0 -0
  66. data/lib/patch_ruby/api/.orders_api.rb.un~ +0 -0
  67. data/lib/patch_ruby/models/.create_ethereum_estimate_request.rb.un~ +0 -0
  68. data/spec/.spec_helper.rb.un~ +0 -0
  69. data/spec/integration/.estimates_spec.rb.un~ +0 -0
  70. data/spec/integration/.orders_spec.rb.un~ +0 -0
  71. data/spec/integration/.preferences_spec.rb.un~ +0 -0
  72. data/spec/integration/.projects_spec.rb.un~ +0 -0
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class ErrorResponse
@@ -29,6 +30,11 @@ module Patch
29
30
  }
30
31
  end
31
32
 
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
32
38
  # Attribute type mapping.
33
39
  def self.openapi_types
34
40
  {
@@ -38,15 +44,14 @@ module Patch
38
44
  }
39
45
  end
40
46
 
41
- # Set with nullable attributes.
47
+ # List of attributes with nullable: true
42
48
  def self.openapi_nullable
43
- nullable_properties = Set.new
44
-
45
- nullable_properties.add("data")
46
-
47
- nullable_properties
49
+ Set.new([
50
+ :'data'
51
+ ])
48
52
  end
49
53
 
54
+
50
55
  # Allows models with corresponding API classes to delegate API operations to those API classes
51
56
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
52
57
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -144,7 +149,9 @@ module Patch
144
149
  def build_from_hash(attributes)
145
150
  return nil unless attributes.is_a?(Hash)
146
151
  self.class.openapi_types.each_pair do |key, type|
147
- if type =~ /\AArray<(.*)>/i
152
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
153
+ self.send("#{key}=", nil)
154
+ elsif type =~ /\AArray<(.*)>/i
148
155
  # check to ensure the input is an array given that the attribute
149
156
  # is documented as an array but the input is not
150
157
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -152,7 +159,7 @@ module Patch
152
159
  end
153
160
  elsif !attributes[self.class.attribute_map[key]].nil?
154
161
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
155
- end # or else data not found in attributes(hash), not an issue as the data can be optional
162
+ end
156
163
  end
157
164
 
158
165
  self
@@ -164,8 +171,8 @@ module Patch
164
171
  # @return [Object] Deserialized data
165
172
  def _deserialize(type, value)
166
173
  case type.to_sym
167
- when :DateTime
168
- DateTime.parse(value)
174
+ when :Time
175
+ Time.parse(value)
169
176
  when :Date
170
177
  Date.parse(value)
171
178
  when :String
@@ -195,7 +202,9 @@ module Patch
195
202
  end
196
203
  end
197
204
  else # model
198
- Patch.const_get(type).build_from_hash(value)
205
+ # models (e.g. Pet) or oneOf
206
+ klass = Patch.const_get(type)
207
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
199
208
  end
200
209
  end
201
210
 
@@ -221,7 +230,7 @@ module Patch
221
230
  is_nullable = self.class.openapi_nullable.include?(attr)
222
231
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
223
232
  end
224
-
233
+
225
234
  hash[param] = _to_hash(value)
226
235
  end
227
236
  hash
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class Estimate
@@ -40,6 +41,11 @@ module Patch
40
41
  }
41
42
  end
42
43
 
44
+ # Returns all the JSON keys this model knows about
45
+ def self.acceptable_attributes
46
+ attribute_map.values
47
+ end
48
+
43
49
  # Attribute type mapping.
44
50
  def self.openapi_types
45
51
  {
@@ -51,15 +57,14 @@ module Patch
51
57
  }
52
58
  end
53
59
 
54
- # Set with nullable attributes.
60
+ # List of attributes with nullable: true
55
61
  def self.openapi_nullable
56
- nullable_properties = Set.new
57
-
58
- nullable_properties.add("order")
59
-
60
- nullable_properties
62
+ Set.new([
63
+ :'order'
64
+ ])
61
65
  end
62
66
 
67
+
63
68
  # Allows models with corresponding API classes to delegate API operations to those API classes
64
69
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
65
70
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -172,7 +177,9 @@ module Patch
172
177
  def build_from_hash(attributes)
173
178
  return nil unless attributes.is_a?(Hash)
174
179
  self.class.openapi_types.each_pair do |key, type|
175
- if type =~ /\AArray<(.*)>/i
180
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
181
+ self.send("#{key}=", nil)
182
+ elsif type =~ /\AArray<(.*)>/i
176
183
  # check to ensure the input is an array given that the attribute
177
184
  # is documented as an array but the input is not
178
185
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -180,7 +187,7 @@ module Patch
180
187
  end
181
188
  elsif !attributes[self.class.attribute_map[key]].nil?
182
189
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
183
- end # or else data not found in attributes(hash), not an issue as the data can be optional
190
+ end
184
191
  end
185
192
 
186
193
  self
@@ -192,8 +199,8 @@ module Patch
192
199
  # @return [Object] Deserialized data
193
200
  def _deserialize(type, value)
194
201
  case type.to_sym
195
- when :DateTime
196
- DateTime.parse(value)
202
+ when :Time
203
+ Time.parse(value)
197
204
  when :Date
198
205
  Date.parse(value)
199
206
  when :String
@@ -223,7 +230,9 @@ module Patch
223
230
  end
224
231
  end
225
232
  else # model
226
- Patch.const_get(type).build_from_hash(value)
233
+ # models (e.g. Pet) or oneOf
234
+ klass = Patch.const_get(type)
235
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
227
236
  end
228
237
  end
229
238
 
@@ -249,7 +258,7 @@ module Patch
249
258
  is_nullable = self.class.openapi_nullable.include?(attr)
250
259
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
251
260
  end
252
-
261
+
253
262
  hash[param] = _to_hash(value)
254
263
  end
255
264
  hash
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class EstimateListResponse
@@ -32,6 +33,11 @@ module Patch
32
33
  }
33
34
  end
34
35
 
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ attribute_map.values
39
+ end
40
+
35
41
  # Attribute type mapping.
36
42
  def self.openapi_types
37
43
  {
@@ -42,15 +48,14 @@ module Patch
42
48
  }
43
49
  end
44
50
 
45
- # Set with nullable attributes.
51
+ # List of attributes with nullable: true
46
52
  def self.openapi_nullable
47
- nullable_properties = Set.new
48
-
49
- nullable_properties.add("error")
50
-
51
- nullable_properties
53
+ Set.new([
54
+ :'error',
55
+ ])
52
56
  end
53
57
 
58
+
54
59
  # Allows models with corresponding API classes to delegate API operations to those API classes
55
60
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
56
61
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -160,7 +165,9 @@ module Patch
160
165
  def build_from_hash(attributes)
161
166
  return nil unless attributes.is_a?(Hash)
162
167
  self.class.openapi_types.each_pair do |key, type|
163
- if type =~ /\AArray<(.*)>/i
168
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
169
+ self.send("#{key}=", nil)
170
+ elsif type =~ /\AArray<(.*)>/i
164
171
  # check to ensure the input is an array given that the attribute
165
172
  # is documented as an array but the input is not
166
173
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -168,7 +175,7 @@ module Patch
168
175
  end
169
176
  elsif !attributes[self.class.attribute_map[key]].nil?
170
177
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
171
- end # or else data not found in attributes(hash), not an issue as the data can be optional
178
+ end
172
179
  end
173
180
 
174
181
  self
@@ -180,8 +187,8 @@ module Patch
180
187
  # @return [Object] Deserialized data
181
188
  def _deserialize(type, value)
182
189
  case type.to_sym
183
- when :DateTime
184
- DateTime.parse(value)
190
+ when :Time
191
+ Time.parse(value)
185
192
  when :Date
186
193
  Date.parse(value)
187
194
  when :String
@@ -211,7 +218,9 @@ module Patch
211
218
  end
212
219
  end
213
220
  else # model
214
- Patch.const_get(type).build_from_hash(value)
221
+ # models (e.g. Pet) or oneOf
222
+ klass = Patch.const_get(type)
223
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
215
224
  end
216
225
  end
217
226
 
@@ -237,7 +246,7 @@ module Patch
237
246
  is_nullable = self.class.openapi_nullable.include?(attr)
238
247
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
239
248
  end
240
-
249
+
241
250
  hash[param] = _to_hash(value)
242
251
  end
243
252
  hash
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class EstimateResponse
@@ -29,6 +30,11 @@ module Patch
29
30
  }
30
31
  end
31
32
 
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
32
38
  # Attribute type mapping.
33
39
  def self.openapi_types
34
40
  {
@@ -38,15 +44,14 @@ module Patch
38
44
  }
39
45
  end
40
46
 
41
- # Set with nullable attributes.
47
+ # List of attributes with nullable: true
42
48
  def self.openapi_nullable
43
- nullable_properties = Set.new
44
-
45
- nullable_properties.add("error")
46
-
47
- nullable_properties
49
+ Set.new([
50
+ :'error',
51
+ ])
48
52
  end
49
53
 
54
+
50
55
  # Allows models with corresponding API classes to delegate API operations to those API classes
51
56
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
52
57
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -144,7 +149,9 @@ module Patch
144
149
  def build_from_hash(attributes)
145
150
  return nil unless attributes.is_a?(Hash)
146
151
  self.class.openapi_types.each_pair do |key, type|
147
- if type =~ /\AArray<(.*)>/i
152
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
153
+ self.send("#{key}=", nil)
154
+ elsif type =~ /\AArray<(.*)>/i
148
155
  # check to ensure the input is an array given that the attribute
149
156
  # is documented as an array but the input is not
150
157
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -152,7 +159,7 @@ module Patch
152
159
  end
153
160
  elsif !attributes[self.class.attribute_map[key]].nil?
154
161
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
155
- end # or else data not found in attributes(hash), not an issue as the data can be optional
162
+ end
156
163
  end
157
164
 
158
165
  self
@@ -164,8 +171,8 @@ module Patch
164
171
  # @return [Object] Deserialized data
165
172
  def _deserialize(type, value)
166
173
  case type.to_sym
167
- when :DateTime
168
- DateTime.parse(value)
174
+ when :Time
175
+ Time.parse(value)
169
176
  when :Date
170
177
  Date.parse(value)
171
178
  when :String
@@ -195,7 +202,9 @@ module Patch
195
202
  end
196
203
  end
197
204
  else # model
198
- Patch.const_get(type).build_from_hash(value)
205
+ # models (e.g. Pet) or oneOf
206
+ klass = Patch.const_get(type)
207
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
199
208
  end
200
209
  end
201
210
 
@@ -221,7 +230,7 @@ module Patch
221
230
  is_nullable = self.class.openapi_nullable.include?(attr)
222
231
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
223
232
  end
224
-
233
+
225
234
  hash[param] = _to_hash(value)
226
235
  end
227
236
  hash
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: v1
7
7
  Contact: developers@usepatch.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Patch
16
17
  class MetaIndexObject
@@ -26,6 +27,11 @@ module Patch
26
27
  }
27
28
  end
28
29
 
30
+ # Returns all the JSON keys this model knows about
31
+ def self.acceptable_attributes
32
+ attribute_map.values
33
+ end
34
+
29
35
  # Attribute type mapping.
30
36
  def self.openapi_types
31
37
  {
@@ -34,17 +40,15 @@ module Patch
34
40
  }
35
41
  end
36
42
 
37
- # Set with nullable attributes.
43
+ # List of attributes with nullable: true
38
44
  def self.openapi_nullable
39
- nullable_properties = Set.new
40
-
41
- nullable_properties.add("prev_page")
42
-
43
- nullable_properties.add("next_page")
44
-
45
- nullable_properties
45
+ Set.new([
46
+ :'prev_page',
47
+ :'next_page'
48
+ ])
46
49
  end
47
50
 
51
+
48
52
  # Allows models with corresponding API classes to delegate API operations to those API classes
49
53
  # Exposes Model.operation_id which delegates to ModelsApi.new.operation_id
50
54
  # Eg. Order.create_order delegates to OrdersApi.new.create_order
@@ -127,7 +131,9 @@ module Patch
127
131
  def build_from_hash(attributes)
128
132
  return nil unless attributes.is_a?(Hash)
129
133
  self.class.openapi_types.each_pair do |key, type|
130
- if type =~ /\AArray<(.*)>/i
134
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
135
+ self.send("#{key}=", nil)
136
+ elsif type =~ /\AArray<(.*)>/i
131
137
  # check to ensure the input is an array given that the attribute
132
138
  # is documented as an array but the input is not
133
139
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -135,7 +141,7 @@ module Patch
135
141
  end
136
142
  elsif !attributes[self.class.attribute_map[key]].nil?
137
143
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
138
- end # or else data not found in attributes(hash), not an issue as the data can be optional
144
+ end
139
145
  end
140
146
 
141
147
  self
@@ -147,8 +153,8 @@ module Patch
147
153
  # @return [Object] Deserialized data
148
154
  def _deserialize(type, value)
149
155
  case type.to_sym
150
- when :DateTime
151
- DateTime.parse(value)
156
+ when :Time
157
+ Time.parse(value)
152
158
  when :Date
153
159
  Date.parse(value)
154
160
  when :String
@@ -178,7 +184,9 @@ module Patch
178
184
  end
179
185
  end
180
186
  else # model
181
- Patch.const_get(type).build_from_hash(value)
187
+ # models (e.g. Pet) or oneOf
188
+ klass = Patch.const_get(type)
189
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
182
190
  end
183
191
  end
184
192
 
@@ -204,7 +212,7 @@ module Patch
204
212
  is_nullable = self.class.openapi_nullable.include?(attr)
205
213
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
206
214
  end
207
-
215
+
208
216
  hash[param] = _to_hash(value)
209
217
  end
210
218
  hash