square_connect 2.0.0 → 2.0.2.13

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 (222) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +7 -0
  3. data/README.md +151 -9
  4. data/Rakefile +8 -0
  5. data/docs/Address.md +26 -0
  6. data/docs/CaptureTransactionRequest.md +11 -0
  7. data/docs/CaptureTransactionResponse.md +12 -0
  8. data/docs/Card.md +18 -0
  9. data/docs/CardBrand.md +20 -0
  10. data/docs/ChargeRequest.md +22 -0
  11. data/docs/ChargeResponse.md +13 -0
  12. data/docs/Checkout.md +20 -0
  13. data/docs/CheckoutApi.md +62 -0
  14. data/docs/Country.md +261 -0
  15. data/docs/CreateCheckoutRequest.md +18 -0
  16. data/docs/CreateCheckoutResponse.md +13 -0
  17. data/docs/CreateCustomerCardRequest.md +14 -0
  18. data/docs/CreateCustomerCardResponse.md +13 -0
  19. data/docs/CreateCustomerRequest.md +20 -0
  20. data/docs/CreateCustomerResponse.md +13 -0
  21. data/docs/CreateOrderRequest.md +13 -0
  22. data/docs/CreateOrderRequestLineItem.md +14 -0
  23. data/docs/CreateOrderRequestOrder.md +13 -0
  24. data/docs/CreateRefundRequest.md +15 -0
  25. data/docs/CreateRefundResponse.md +13 -0
  26. data/docs/Currency.md +191 -0
  27. data/docs/Customer.md +26 -0
  28. data/docs/CustomerApi.md +267 -0
  29. data/docs/CustomerCardApi.md +116 -0
  30. data/docs/CustomerGroupInfo.md +13 -0
  31. data/docs/CustomerPreferences.md +12 -0
  32. data/docs/DeleteCustomerCardRequest.md +11 -0
  33. data/docs/DeleteCustomerCardResponse.md +12 -0
  34. data/docs/DeleteCustomerRequest.md +11 -0
  35. data/docs/DeleteCustomerResponse.md +12 -0
  36. data/docs/Error.md +15 -0
  37. data/docs/ErrorCategory.md +17 -0
  38. data/docs/ErrorCode.md +83 -0
  39. data/docs/ListCustomersRequest.md +12 -0
  40. data/docs/ListCustomersResponse.md +14 -0
  41. data/docs/ListLocationsRequest.md +11 -0
  42. data/docs/ListLocationsResponse.md +13 -0
  43. data/docs/ListRefundsRequest.md +15 -0
  44. data/docs/ListRefundsResponse.md +14 -0
  45. data/docs/ListTransactionsRequest.md +15 -0
  46. data/docs/ListTransactionsResponse.md +14 -0
  47. data/docs/Location.md +16 -0
  48. data/docs/LocationApi.md +56 -0
  49. data/docs/LocationCapability.md +12 -0
  50. data/docs/Money.md +13 -0
  51. data/docs/Order.md +16 -0
  52. data/docs/OrderLineItem.md +16 -0
  53. data/docs/Refund.md +20 -0
  54. data/docs/RefundApi.md +126 -0
  55. data/docs/RefundStatus.md +15 -0
  56. data/docs/RetrieveCustomerRequest.md +11 -0
  57. data/docs/RetrieveCustomerResponse.md +13 -0
  58. data/docs/RetrieveTransactionRequest.md +11 -0
  59. data/docs/RetrieveTransactionResponse.md +13 -0
  60. data/docs/SortOrder.md +13 -0
  61. data/docs/Tender.md +22 -0
  62. data/docs/TenderCardDetails.md +14 -0
  63. data/docs/TenderCardDetailsEntryMethod.md +16 -0
  64. data/docs/TenderCardDetailsStatus.md +15 -0
  65. data/docs/TenderCashDetails.md +13 -0
  66. data/docs/TenderType.md +17 -0
  67. data/docs/Transaction.md +21 -0
  68. data/docs/TransactionApi.md +285 -0
  69. data/docs/TransactionProduct.md +19 -0
  70. data/docs/UpdateCustomerRequest.md +20 -0
  71. data/docs/UpdateCustomerResponse.md +13 -0
  72. data/docs/VoidTransactionRequest.md +11 -0
  73. data/docs/VoidTransactionResponse.md +12 -0
  74. data/lib/square_connect.rb +33 -16
  75. data/lib/square_connect/api/checkout_api.rb +82 -0
  76. data/lib/square_connect/api/customer_api.rb +121 -162
  77. data/lib/square_connect/api/customer_card_api.rb +31 -50
  78. data/lib/square_connect/api/location_api.rb +12 -20
  79. data/lib/square_connect/api/refund_api.rb +70 -90
  80. data/lib/square_connect/api/transaction_api.rb +119 -165
  81. data/lib/square_connect/api_client.rb +64 -17
  82. data/lib/square_connect/api_error.rb +7 -3
  83. data/lib/square_connect/configuration.rb +31 -1
  84. data/lib/square_connect/models/address.rb +149 -78
  85. data/lib/square_connect/models/capture_transaction_request.rb +176 -0
  86. data/lib/square_connect/models/capture_transaction_response.rb +54 -26
  87. data/lib/square_connect/models/card.rb +98 -52
  88. data/lib/square_connect/models/card_brand.rb +12 -133
  89. data/lib/square_connect/models/charge_request.rb +106 -67
  90. data/lib/square_connect/models/charge_response.rb +57 -30
  91. data/lib/square_connect/models/checkout.rb +266 -0
  92. data/lib/square_connect/models/country.rb +253 -133
  93. data/lib/square_connect/models/create_checkout_request.rb +316 -0
  94. data/lib/square_connect/models/create_checkout_response.rb +198 -0
  95. data/lib/square_connect/models/create_customer_card_request.rb +66 -35
  96. data/lib/square_connect/models/create_customer_card_response.rb +58 -31
  97. data/lib/square_connect/models/create_customer_request.rb +79 -59
  98. data/lib/square_connect/models/create_customer_response.rb +58 -31
  99. data/lib/square_connect/models/create_order_request.rb +234 -0
  100. data/lib/square_connect/models/create_order_request_line_item.rb +268 -0
  101. data/lib/square_connect/models/create_order_request_order.rb +219 -0
  102. data/lib/square_connect/models/create_refund_request.rb +79 -39
  103. data/lib/square_connect/models/create_refund_response.rb +57 -30
  104. data/lib/square_connect/models/currency.rb +183 -133
  105. data/lib/square_connect/models/customer.rb +130 -77
  106. data/lib/square_connect/models/customer_group_info.rb +206 -0
  107. data/lib/square_connect/models/customer_preferences.rb +186 -0
  108. data/lib/square_connect/models/delete_customer_card_request.rb +176 -0
  109. data/lib/square_connect/models/delete_customer_card_response.rb +55 -27
  110. data/lib/square_connect/models/delete_customer_request.rb +176 -0
  111. data/lib/square_connect/models/delete_customer_response.rb +55 -27
  112. data/lib/square_connect/models/error.rb +107 -45
  113. data/lib/square_connect/models/error_category.rb +9 -133
  114. data/lib/square_connect/models/error_code.rb +75 -133
  115. data/lib/square_connect/models/list_customers_request.rb +55 -27
  116. data/lib/square_connect/models/list_customers_response.rb +61 -35
  117. data/lib/square_connect/models/list_locations_request.rb +176 -0
  118. data/lib/square_connect/models/list_locations_response.rb +57 -30
  119. data/lib/square_connect/models/list_refunds_request.rb +91 -42
  120. data/lib/square_connect/models/list_refunds_response.rb +59 -33
  121. data/lib/square_connect/models/list_transactions_request.rb +91 -42
  122. data/lib/square_connect/models/list_transactions_response.rb +59 -33
  123. data/lib/square_connect/models/location.rb +86 -41
  124. data/lib/square_connect/models/location_capability.rb +4 -133
  125. data/lib/square_connect/models/money.rb +85 -34
  126. data/lib/square_connect/models/order.rb +228 -0
  127. data/lib/square_connect/models/order_line_item.rb +226 -0
  128. data/lib/square_connect/models/refund.rb +138 -59
  129. data/lib/square_connect/models/refund_status.rb +7 -133
  130. data/lib/square_connect/models/retrieve_customer_request.rb +176 -0
  131. data/lib/square_connect/models/retrieve_customer_response.rb +58 -31
  132. data/lib/square_connect/models/retrieve_transaction_request.rb +176 -0
  133. data/lib/square_connect/models/retrieve_transaction_response.rb +57 -30
  134. data/lib/square_connect/models/sort_order.rb +5 -133
  135. data/lib/square_connect/models/tender.rb +112 -65
  136. data/lib/square_connect/models/tender_card_details.rb +93 -40
  137. data/lib/square_connect/models/tender_card_details_entry_method.rb +8 -133
  138. data/lib/square_connect/models/tender_card_details_status.rb +7 -133
  139. data/lib/square_connect/models/tender_cash_details.rb +58 -31
  140. data/lib/square_connect/models/tender_type.rb +9 -133
  141. data/lib/square_connect/models/transaction.rb +132 -56
  142. data/lib/square_connect/models/transaction_product.rb +11 -133
  143. data/lib/square_connect/models/update_customer_request.rb +79 -59
  144. data/lib/square_connect/models/update_customer_response.rb +58 -31
  145. data/lib/square_connect/models/void_transaction_request.rb +176 -0
  146. data/lib/square_connect/models/void_transaction_response.rb +54 -26
  147. data/lib/square_connect/version.rb +2 -3
  148. data/spec/api/checkout_api_spec.rb +53 -0
  149. data/spec/api/customer_api_spec.rb +121 -0
  150. data/spec/api/customer_card_api_spec.rb +71 -0
  151. data/spec/api/location_api_spec.rb +58 -0
  152. data/spec/api/refund_api_spec.rb +75 -0
  153. data/spec/api/transaction_api_spec.rb +128 -0
  154. data/spec/api_client_spec.rb +226 -0
  155. data/spec/configuration_spec.rb +42 -0
  156. data/spec/models/address_spec.rb +186 -0
  157. data/spec/models/capture_transaction_request_spec.rb +36 -0
  158. data/spec/models/capture_transaction_response_spec.rb +46 -0
  159. data/spec/models/card_brand_spec.rb +36 -0
  160. data/spec/models/card_spec.rb +106 -0
  161. data/spec/models/charge_request_spec.rb +146 -0
  162. data/spec/models/charge_response_spec.rb +56 -0
  163. data/spec/models/checkout_spec.rb +126 -0
  164. data/spec/models/country_spec.rb +36 -0
  165. data/spec/models/create_checkout_request_spec.rb +106 -0
  166. data/spec/models/create_checkout_response_spec.rb +56 -0
  167. data/spec/models/create_customer_card_request_spec.rb +66 -0
  168. data/spec/models/create_customer_card_response_spec.rb +56 -0
  169. data/spec/models/create_customer_request_spec.rb +126 -0
  170. data/spec/models/create_customer_response_spec.rb +56 -0
  171. data/spec/models/create_order_request_line_item_spec.rb +66 -0
  172. data/spec/models/create_order_request_order_spec.rb +56 -0
  173. data/spec/models/create_order_request_spec.rb +56 -0
  174. data/spec/models/create_refund_request_spec.rb +76 -0
  175. data/spec/models/create_refund_response_spec.rb +56 -0
  176. data/spec/models/currency_spec.rb +36 -0
  177. data/spec/models/customer_group_info_spec.rb +56 -0
  178. data/spec/models/customer_preferences_spec.rb +46 -0
  179. data/spec/models/customer_spec.rb +186 -0
  180. data/spec/models/delete_customer_card_request_spec.rb +36 -0
  181. data/spec/models/delete_customer_card_response_spec.rb +46 -0
  182. data/spec/models/delete_customer_request_spec.rb +36 -0
  183. data/spec/models/delete_customer_response_spec.rb +46 -0
  184. data/spec/models/error_category_spec.rb +36 -0
  185. data/spec/models/error_code_spec.rb +36 -0
  186. data/spec/models/error_spec.rb +76 -0
  187. data/spec/models/list_customers_request_spec.rb +46 -0
  188. data/spec/models/list_customers_response_spec.rb +66 -0
  189. data/spec/models/list_locations_request_spec.rb +36 -0
  190. data/spec/models/list_locations_response_spec.rb +56 -0
  191. data/spec/models/list_refunds_request_spec.rb +76 -0
  192. data/spec/models/list_refunds_response_spec.rb +66 -0
  193. data/spec/models/list_transactions_request_spec.rb +76 -0
  194. data/spec/models/list_transactions_response_spec.rb +66 -0
  195. data/spec/models/location_capability_spec.rb +36 -0
  196. data/spec/models/location_spec.rb +86 -0
  197. data/spec/models/money_spec.rb +56 -0
  198. data/spec/models/order_line_item_spec.rb +86 -0
  199. data/spec/models/order_spec.rb +86 -0
  200. data/spec/models/refund_spec.rb +126 -0
  201. data/spec/models/refund_status_spec.rb +36 -0
  202. data/spec/models/retrieve_customer_request_spec.rb +36 -0
  203. data/spec/models/retrieve_customer_response_spec.rb +56 -0
  204. data/spec/models/retrieve_transaction_request_spec.rb +36 -0
  205. data/spec/models/retrieve_transaction_response_spec.rb +56 -0
  206. data/spec/models/sort_order_spec.rb +36 -0
  207. data/spec/models/tender_card_details_entry_method_spec.rb +36 -0
  208. data/spec/models/tender_card_details_spec.rb +66 -0
  209. data/spec/models/tender_card_details_status_spec.rb +36 -0
  210. data/spec/models/tender_cash_details_spec.rb +56 -0
  211. data/spec/models/tender_spec.rb +146 -0
  212. data/spec/models/tender_type_spec.rb +36 -0
  213. data/spec/models/transaction_product_spec.rb +36 -0
  214. data/spec/models/transaction_spec.rb +136 -0
  215. data/spec/models/update_customer_request_spec.rb +126 -0
  216. data/spec/models/update_customer_response_spec.rb +56 -0
  217. data/spec/models/void_transaction_request_spec.rb +36 -0
  218. data/spec/models/void_transaction_response_spec.rb +46 -0
  219. data/spec/spec_helper.rb +115 -0
  220. data/square_connect.gemspec +22 -11
  221. data/travis-ci/accounts.enc +0 -0
  222. metadata +264 -31
@@ -1,28 +1,27 @@
1
1
  =begin
2
- Square Connect API
2
+ #Square Connect API
3
3
 
4
4
  OpenAPI spec version: 2.0
5
5
 
6
6
  Generated by: https://github.com/swagger-api/swagger-codegen.git
7
7
 
8
-
9
8
  =end
10
9
 
11
10
  require 'date'
12
11
 
13
12
  module SquareConnect
14
- #
13
+ # Represents a refund processed for a Square transaction.
15
14
  class Refund
16
- # The unique ID of the refund.
15
+ # The refund's unique ID.
17
16
  attr_accessor :id
18
17
 
19
18
  # The ID of the refund's associated location.
20
19
  attr_accessor :location_id
21
20
 
22
- # The ID of the transaction refunded.
21
+ # The ID of the transaction that the refunded tender is part of.
23
22
  attr_accessor :transaction_id
24
23
 
25
- # The ID of the tender refunded.
24
+ # The ID of the refunded tender.
26
25
  attr_accessor :tender_id
27
26
 
28
27
  # The time when the refund was created, in RFC 3339 format.
@@ -31,37 +30,49 @@ module SquareConnect
31
30
  # The reason for the refund being issued.
32
31
  attr_accessor :reason
33
32
 
34
- # The amount of money refunded.
33
+ # The amount of money refunded to the buyer.
35
34
  attr_accessor :amount_money
36
35
 
37
- #
36
+ # The current status of the refund (`PENDING`, `APPROVED`, `REJECTED`, or `FAILED`).
38
37
  attr_accessor :status
39
38
 
40
- # The amount of processing fee refunded.
39
+ # The amount of Square processing fee money refunded to the *merchant*.
41
40
  attr_accessor :processing_fee_money
42
41
 
42
+ class EnumAttributeValidator
43
+ attr_reader :datatype
44
+ attr_reader :allowable_values
45
+
46
+ def initialize(datatype, allowable_values)
47
+ @allowable_values = allowable_values.map do |value|
48
+ case datatype.to_s
49
+ when /Integer/i
50
+ value.to_i
51
+ when /Float/i
52
+ value.to_f
53
+ else
54
+ value
55
+ end
56
+ end
57
+ end
58
+
59
+ def valid?(value)
60
+ !value || allowable_values.include?(value)
61
+ end
62
+ end
63
+
43
64
  # Attribute mapping from ruby-style variable name to JSON key.
44
65
  def self.attribute_map
45
66
  {
46
-
47
67
  :'id' => :'id',
48
-
49
68
  :'location_id' => :'location_id',
50
-
51
69
  :'transaction_id' => :'transaction_id',
52
-
53
70
  :'tender_id' => :'tender_id',
54
-
55
71
  :'created_at' => :'created_at',
56
-
57
72
  :'reason' => :'reason',
58
-
59
73
  :'amount_money' => :'amount_money',
60
-
61
74
  :'status' => :'status',
62
-
63
75
  :'processing_fee_money' => :'processing_fee_money'
64
-
65
76
  }
66
77
  end
67
78
 
@@ -77,65 +88,117 @@ module SquareConnect
77
88
  :'amount_money' => :'Money',
78
89
  :'status' => :'String',
79
90
  :'processing_fee_money' => :'Money'
80
-
81
91
  }
82
92
  end
83
93
 
94
+ # Initializes the object
95
+ # @param [Hash] attributes Model attributes in the form of hash
84
96
  def initialize(attributes = {})
85
97
  return unless attributes.is_a?(Hash)
86
98
 
87
99
  # convert string to symbol for hash key
88
- attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
100
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
89
101
 
90
-
91
- if attributes[:'id']
102
+ if attributes.has_key?(:'id')
92
103
  self.id = attributes[:'id']
93
104
  end
94
-
95
- if attributes[:'location_id']
105
+
106
+ if attributes.has_key?(:'location_id')
96
107
  self.location_id = attributes[:'location_id']
97
108
  end
98
-
99
- if attributes[:'transaction_id']
109
+
110
+ if attributes.has_key?(:'transaction_id')
100
111
  self.transaction_id = attributes[:'transaction_id']
101
112
  end
102
-
103
- if attributes[:'tender_id']
113
+
114
+ if attributes.has_key?(:'tender_id')
104
115
  self.tender_id = attributes[:'tender_id']
105
116
  end
106
-
107
- if attributes[:'created_at']
117
+
118
+ if attributes.has_key?(:'created_at')
108
119
  self.created_at = attributes[:'created_at']
109
120
  end
110
-
111
- if attributes[:'reason']
121
+
122
+ if attributes.has_key?(:'reason')
112
123
  self.reason = attributes[:'reason']
113
124
  end
114
-
115
- if attributes[:'amount_money']
125
+
126
+ if attributes.has_key?(:'amount_money')
116
127
  self.amount_money = attributes[:'amount_money']
117
128
  end
118
-
119
- if attributes[:'status']
129
+
130
+ if attributes.has_key?(:'status')
120
131
  self.status = attributes[:'status']
121
132
  end
122
-
123
- if attributes[:'processing_fee_money']
133
+
134
+ if attributes.has_key?(:'processing_fee_money')
124
135
  self.processing_fee_money = attributes[:'processing_fee_money']
125
136
  end
126
-
137
+
138
+ end
139
+
140
+ # Show invalid properties with the reasons. Usually used together with valid?
141
+ # @return Array for valid properies with the reasons
142
+ def list_invalid_properties
143
+ invalid_properties = Array.new
144
+ if @id.nil?
145
+ invalid_properties.push("invalid value for 'id', id cannot be nil.")
146
+ end
147
+
148
+ if @location_id.nil?
149
+ invalid_properties.push("invalid value for 'location_id', location_id cannot be nil.")
150
+ end
151
+
152
+ if @transaction_id.nil?
153
+ invalid_properties.push("invalid value for 'transaction_id', transaction_id cannot be nil.")
154
+ end
155
+
156
+ if @tender_id.nil?
157
+ invalid_properties.push("invalid value for 'tender_id', tender_id cannot be nil.")
158
+ end
159
+
160
+ if @reason.nil?
161
+ invalid_properties.push("invalid value for 'reason', reason cannot be nil.")
162
+ end
163
+
164
+ if @amount_money.nil?
165
+ invalid_properties.push("invalid value for 'amount_money', amount_money cannot be nil.")
166
+ end
167
+
168
+ if @status.nil?
169
+ invalid_properties.push("invalid value for 'status', status cannot be nil.")
170
+ end
171
+
172
+ return invalid_properties
173
+ end
174
+
175
+ # Check to see if the all the properties in the model are valid
176
+ # @return true if the model is valid
177
+ def valid?
178
+ return false if @id.nil?
179
+ return false if @location_id.nil?
180
+ return false if @transaction_id.nil?
181
+ return false if @tender_id.nil?
182
+ return false if @reason.nil?
183
+ return false if @amount_money.nil?
184
+ return false if @status.nil?
185
+ status_validator = EnumAttributeValidator.new('String', ["PENDING", "APPROVED", "REJECTED", "FAILED"])
186
+ return false unless status_validator.valid?(@status)
187
+ return true
127
188
  end
128
189
 
129
190
  # Custom attribute writer method checking allowed values (enum).
191
+ # @param [Object] status Object to be assigned
130
192
  def status=(status)
131
- allowed_values = ["PENDING", "APPROVED", "REJECTED", "FAILED"]
132
- if status && !allowed_values.include?(status)
133
- fail "invalid value for 'status', must be one of #{allowed_values}"
193
+ validator = EnumAttributeValidator.new('String', ["PENDING", "APPROVED", "REJECTED", "FAILED"])
194
+ unless validator.valid?(status)
195
+ fail ArgumentError, "invalid value for 'status', must be one of #{validator.allowable_values}."
134
196
  end
135
197
  @status = status
136
198
  end
137
199
 
138
- # Check equality by comparing each attribute.
200
+ # Checks equality by comparing each attribute.
201
+ # @param [Object] Object to be compared
139
202
  def ==(o)
140
203
  return true if self.equal?(o)
141
204
  self.class == o.class &&
@@ -151,35 +214,41 @@ module SquareConnect
151
214
  end
152
215
 
153
216
  # @see the `==` method
217
+ # @param [Object] Object to be compared
154
218
  def eql?(o)
155
219
  self == o
156
220
  end
157
221
 
158
- # Calculate hash code according to all attributes.
222
+ # Calculates hash code according to all attributes.
223
+ # @return [Fixnum] Hash code
159
224
  def hash
160
225
  [id, location_id, transaction_id, tender_id, created_at, reason, amount_money, status, processing_fee_money].hash
161
226
  end
162
227
 
163
- # build the object from hash
228
+ # Builds the object from hash
229
+ # @param [Hash] attributes Model attributes in the form of hash
230
+ # @return [Object] Returns the model itself
164
231
  def build_from_hash(attributes)
165
232
  return nil unless attributes.is_a?(Hash)
166
233
  self.class.swagger_types.each_pair do |key, type|
167
- if type =~ /^Array<(.*)>/i
234
+ if type =~ /\AArray<(.*)>/i
235
+ # check to ensure the input is an array given that the the attribute
236
+ # is documented as an array but the input is not
168
237
  if attributes[self.class.attribute_map[key]].is_a?(Array)
169
238
  self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
170
- else
171
- #TODO show warning in debug mode
172
239
  end
173
240
  elsif !attributes[self.class.attribute_map[key]].nil?
174
241
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
175
- else
176
- # data not found in attributes(hash), not an issue as the data can be optional
177
- end
242
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
178
243
  end
179
244
 
180
245
  self
181
246
  end
182
247
 
248
+ # Deserializes the data based on type
249
+ # @param string type Data type
250
+ # @param string value Value to be deserialized
251
+ # @return [Object] Deserialized data
183
252
  def _deserialize(type, value)
184
253
  case type.to_sym
185
254
  when :DateTime
@@ -193,15 +262,18 @@ module SquareConnect
193
262
  when :Float
194
263
  value.to_f
195
264
  when :BOOLEAN
196
- if value.to_s =~ /^(true|t|yes|y|1)$/i
265
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
197
266
  true
198
267
  else
199
268
  false
200
269
  end
270
+ when :Object
271
+ # generic object (usually a Hash), return directly
272
+ value
201
273
  when /\AArray<(?<inner_type>.+)>\z/
202
274
  inner_type = Regexp.last_match[:inner_type]
203
275
  value.map { |v| _deserialize(inner_type, v) }
204
- when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
276
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
205
277
  k_type = Regexp.last_match[:k_type]
206
278
  v_type = Regexp.last_match[:v_type]
207
279
  {}.tap do |hash|
@@ -210,21 +282,25 @@ module SquareConnect
210
282
  end
211
283
  end
212
284
  else # model
213
- _model = SquareConnect.const_get(type).new
214
- _model.build_from_hash(value)
285
+ temp_model = SquareConnect.const_get(type).new
286
+ temp_model.build_from_hash(value)
215
287
  end
216
288
  end
217
289
 
290
+ # Returns the string representation of the object
291
+ # @return [String] String presentation of the object
218
292
  def to_s
219
293
  to_hash.to_s
220
294
  end
221
295
 
222
- # to_body is an alias to to_body (backward compatibility))
296
+ # to_body is an alias to to_hash (backward compatibility)
297
+ # @return [Hash] Returns the object in the form of hash
223
298
  def to_body
224
299
  to_hash
225
300
  end
226
301
 
227
- # return the object in the form of hash
302
+ # Returns the object in the form of hash
303
+ # @return [Hash] Returns the object in the form of hash
228
304
  def to_hash
229
305
  hash = {}
230
306
  self.class.attribute_map.each_pair do |attr, param|
@@ -235,8 +311,10 @@ module SquareConnect
235
311
  hash
236
312
  end
237
313
 
238
- # Method to output non-array value in the form of hash
314
+ # Outputs non-array value in the form of hash
239
315
  # For object, use to_hash. Otherwise, just return the value
316
+ # @param [Object] value Any valid value
317
+ # @return [Hash] Returns the value in the form of hash
240
318
  def _to_hash(value)
241
319
  if value.is_a?(Array)
242
320
  value.compact.map{ |v| _to_hash(v) }
@@ -252,4 +330,5 @@ module SquareConnect
252
330
  end
253
331
 
254
332
  end
333
+
255
334
  end
@@ -1,147 +1,21 @@
1
1
  =begin
2
- Square Connect API
2
+ #Square Connect API
3
3
 
4
4
  OpenAPI spec version: 2.0
5
5
 
6
6
  Generated by: https://github.com/swagger-api/swagger-codegen.git
7
7
 
8
-
9
8
  =end
10
9
 
11
10
  require 'date'
12
11
 
13
12
  module SquareConnect
14
- #
15
13
  class RefundStatus
16
- # Attribute mapping from ruby-style variable name to JSON key.
17
- def self.attribute_map
18
- {
19
-
20
- }
21
- end
22
-
23
- # Attribute type mapping.
24
- def self.swagger_types
25
- {
26
-
27
- }
28
- end
29
-
30
- def initialize(attributes = {})
31
- return unless attributes.is_a?(Hash)
32
-
33
- # convert string to symbol for hash key
34
- attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
35
-
36
-
37
- end
38
-
39
- # Check equality by comparing each attribute.
40
- def ==(o)
41
- return true if self.equal?(o)
42
- self.class == o.class
43
- end
44
-
45
- # @see the `==` method
46
- def eql?(o)
47
- self == o
48
- end
49
-
50
- # Calculate hash code according to all attributes.
51
- def hash
52
- [].hash
53
- end
54
-
55
- # build the object from hash
56
- def build_from_hash(attributes)
57
- return nil unless attributes.is_a?(Hash)
58
- self.class.swagger_types.each_pair do |key, type|
59
- if type =~ /^Array<(.*)>/i
60
- if attributes[self.class.attribute_map[key]].is_a?(Array)
61
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
62
- else
63
- #TODO show warning in debug mode
64
- end
65
- elsif !attributes[self.class.attribute_map[key]].nil?
66
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
67
- else
68
- # data not found in attributes(hash), not an issue as the data can be optional
69
- end
70
- end
71
-
72
- self
73
- end
74
-
75
- def _deserialize(type, value)
76
- case type.to_sym
77
- when :DateTime
78
- DateTime.parse(value)
79
- when :Date
80
- Date.parse(value)
81
- when :String
82
- value.to_s
83
- when :Integer
84
- value.to_i
85
- when :Float
86
- value.to_f
87
- when :BOOLEAN
88
- if value.to_s =~ /^(true|t|yes|y|1)$/i
89
- true
90
- else
91
- false
92
- end
93
- when /\AArray<(?<inner_type>.+)>\z/
94
- inner_type = Regexp.last_match[:inner_type]
95
- value.map { |v| _deserialize(inner_type, v) }
96
- when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
97
- k_type = Regexp.last_match[:k_type]
98
- v_type = Regexp.last_match[:v_type]
99
- {}.tap do |hash|
100
- value.each do |k, v|
101
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
102
- end
103
- end
104
- else # model
105
- _model = SquareConnect.const_get(type).new
106
- _model.build_from_hash(value)
107
- end
108
- end
109
-
110
- def to_s
111
- to_hash.to_s
112
- end
113
-
114
- # to_body is an alias to to_body (backward compatibility))
115
- def to_body
116
- to_hash
117
- end
118
-
119
- # return the object in the form of hash
120
- def to_hash
121
- hash = {}
122
- self.class.attribute_map.each_pair do |attr, param|
123
- value = self.send(attr)
124
- next if value.nil?
125
- hash[param] = _to_hash(value)
126
- end
127
- hash
128
- end
129
-
130
- # Method to output non-array value in the form of hash
131
- # For object, use to_hash. Otherwise, just return the value
132
- def _to_hash(value)
133
- if value.is_a?(Array)
134
- value.compact.map{ |v| _to_hash(v) }
135
- elsif value.is_a?(Hash)
136
- {}.tap do |hash|
137
- value.each { |k, v| hash[k] = _to_hash(v) }
138
- end
139
- elsif value.respond_to? :to_hash
140
- value.to_hash
141
- else
142
- value
143
- end
144
- end
145
-
14
+
15
+ PENDING = "PENDING".freeze
16
+ APPROVED = "APPROVED".freeze
17
+ REJECTED = "REJECTED".freeze
18
+ FAILED = "FAILED".freeze
146
19
  end
20
+
147
21
  end