moneykit 0.0.3 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (192) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/lib/moneykit/api/access_token_api.rb +9 -9
  4. data/lib/moneykit/api/account_numbers_api.rb +6 -6
  5. data/lib/moneykit/api/accounts_api.rb +15 -15
  6. data/lib/moneykit/api/identity_api.rb +6 -6
  7. data/lib/moneykit/api/institutions_api.rb +7 -7
  8. data/lib/moneykit/api/link_session_api.rb +7 -7
  9. data/lib/moneykit/api/links_api.rb +76 -13
  10. data/lib/moneykit/api/products_api.rb +6 -6
  11. data/lib/moneykit/api/transactions_api.rb +28 -28
  12. data/lib/moneykit/api/users_api.rb +14 -14
  13. data/lib/moneykit/api/webhooks_api.rb +97 -0
  14. data/lib/moneykit/api_client.rb +40 -36
  15. data/lib/moneykit/api_error.rb +1 -1
  16. data/lib/moneykit/configuration.rb +20 -30
  17. data/lib/moneykit/models/account.rb +27 -54
  18. data/lib/moneykit/models/account_balances.rb +18 -27
  19. data/lib/moneykit/models/account_group.rb +23 -26
  20. data/lib/moneykit/models/account_identity.rb +34 -59
  21. data/lib/moneykit/models/account_numbers.rb +75 -51
  22. data/lib/moneykit/models/account_numbers_link_product.rb +18 -28
  23. data/lib/moneykit/models/account_numbers_product_settings.rb +16 -21
  24. data/lib/moneykit/models/account_with_account_numbers.rb +29 -56
  25. data/lib/moneykit/models/accounts_link_product.rb +17 -25
  26. data/lib/moneykit/models/ach_number.rb +19 -26
  27. data/lib/moneykit/models/address.rb +17 -28
  28. data/lib/moneykit/models/api_error_auth_expired_access_token_response.rb +17 -24
  29. data/lib/moneykit/models/api_error_auth_unauthorized_response.rb +18 -25
  30. data/lib/moneykit/models/api_error_rate_limit_exceeded_response.rb +17 -24
  31. data/lib/moneykit/models/bacs_number.rb +18 -25
  32. data/lib/moneykit/models/basic_account_details.rb +20 -29
  33. data/lib/moneykit/models/country.rb +1 -1
  34. data/lib/moneykit/models/create_link_session_request.rb +48 -45
  35. data/lib/moneykit/models/create_link_session_response.rb +17 -24
  36. data/lib/moneykit/models/currency.rb +1 -1
  37. data/lib/moneykit/models/cursor_pagination.rb +17 -24
  38. data/lib/moneykit/models/customer_app.rb +18 -25
  39. data/lib/moneykit/models/eft_number.rb +19 -26
  40. data/lib/moneykit/models/email.rb +17 -22
  41. data/lib/moneykit/models/exchange_token_request.rb +17 -24
  42. data/lib/moneykit/models/exchange_token_response.rb +19 -26
  43. data/lib/moneykit/models/generate_access_token_response.rb +19 -26
  44. data/lib/moneykit/models/get_account_numbers_response.rb +23 -26
  45. data/lib/moneykit/models/get_account_response.rb +19 -26
  46. data/lib/moneykit/models/get_accounts_response.rb +25 -31
  47. data/lib/moneykit/models/get_institutions_response.rb +25 -31
  48. data/lib/moneykit/models/get_transactions_response.rb +34 -39
  49. data/lib/moneykit/models/get_user_accounts_response.rb +24 -32
  50. data/lib/moneykit/models/get_user_links_response.rb +24 -32
  51. data/lib/moneykit/models/get_user_transactions_response.rb +32 -34
  52. data/lib/moneykit/models/http_validation_error.rb +24 -28
  53. data/lib/moneykit/models/identity_link_product.rb +18 -28
  54. data/lib/moneykit/models/identity_product_settings.rb +16 -21
  55. data/lib/moneykit/models/identity_response.rb +24 -30
  56. data/lib/moneykit/models/institution.rb +29 -38
  57. data/lib/moneykit/models/institution_error_not_found_response.rb +17 -24
  58. data/lib/moneykit/models/international_number.rb +18 -25
  59. data/lib/moneykit/models/introspect_client_response.rb +22 -29
  60. data/lib/moneykit/models/jwk_set.rb +23 -26
  61. data/lib/moneykit/models/link_common.rb +25 -39
  62. data/lib/moneykit/models/link_error_bad_config_response.rb +269 -0
  63. data/lib/moneykit/models/link_error_bad_state_response.rb +19 -28
  64. data/lib/moneykit/models/link_error_deleted_response.rb +17 -24
  65. data/lib/moneykit/models/link_error_forbidden_action_response.rb +18 -25
  66. data/lib/moneykit/models/link_error_not_found_response.rb +17 -24
  67. data/lib/moneykit/models/link_error_unauthorized_access_response.rb +17 -24
  68. data/lib/moneykit/models/link_permission_scope.rb +1 -1
  69. data/lib/moneykit/models/link_permissions.rb +23 -33
  70. data/lib/moneykit/models/link_products.rb +16 -21
  71. data/lib/moneykit/models/link_response.rb +26 -39
  72. data/lib/moneykit/models/link_session_customer_user.rb +20 -28
  73. data/lib/moneykit/models/link_session_customer_user_email.rb +18 -25
  74. data/lib/moneykit/models/link_session_customer_user_phone.rb +18 -26
  75. data/lib/moneykit/models/link_session_error_forbidden_config_response.rb +18 -25
  76. data/lib/moneykit/models/link_session_error_invalid_token_exchange.rb +18 -25
  77. data/lib/moneykit/models/link_session_setting_overrides.rb +19 -43
  78. data/lib/moneykit/models/link_state.rb +1 -1
  79. data/lib/moneykit/models/link_state_changed_webhook.rb +28 -31
  80. data/lib/moneykit/models/money_link_features.rb +27 -32
  81. data/lib/moneykit/models/owner.rb +42 -42
  82. data/lib/moneykit/models/phone_number.rb +18 -25
  83. data/lib/moneykit/models/phone_number_type.rb +1 -1
  84. data/lib/moneykit/models/product.rb +1 -1
  85. data/lib/moneykit/models/products_settings.rb +19 -24
  86. data/lib/moneykit/models/provider.rb +4 -2
  87. data/lib/moneykit/models/public_link_error.rb +43 -0
  88. data/lib/moneykit/models/refresh_products_request.rb +23 -34
  89. data/lib/moneykit/models/requested_link_permission.rb +19 -26
  90. data/lib/moneykit/models/response401_disconnect_links_id_delete.rb +75 -269
  91. data/lib/moneykit/models/response401_exchange_token_link_session_exchange_token_post.rb +74 -267
  92. data/lib/moneykit/models/response401_get_account_links_id_accounts_account_id_get.rb +75 -269
  93. data/lib/moneykit/models/response401_get_account_numbers_links_id_accounts_numbers_get.rb +75 -269
  94. data/lib/moneykit/models/response401_get_accounts_links_id_accounts_get.rb +75 -269
  95. data/lib/moneykit/models/response401_get_identities_links_id_identity_get.rb +75 -269
  96. data/lib/moneykit/models/response401_get_institution_institutions_institution_id_get.rb +74 -267
  97. data/lib/moneykit/models/response401_get_institutions_institutions_get.rb +74 -267
  98. data/lib/moneykit/models/response401_get_link_links_id_get.rb +75 -269
  99. data/lib/moneykit/models/response401_get_transactions_diff_links_id_transactions_sync_get.rb +75 -269
  100. data/lib/moneykit/models/response401_get_transactions_links_id_transactions_get.rb +75 -269
  101. data/lib/moneykit/models/response401_get_user_accounts_users_id_accounts_get.rb +74 -267
  102. data/lib/moneykit/models/response401_get_user_links_users_id_links_get.rb +74 -267
  103. data/lib/moneykit/models/response401_get_user_transactions_users_id_transactions_get.rb +74 -267
  104. data/lib/moneykit/models/response401_get_well_known_jwks_well_known_jwks_json_get.rb +74 -267
  105. data/lib/moneykit/models/response401_instrospect_client_auth_introspect_get.rb +74 -267
  106. data/lib/moneykit/models/response401_refresh_products_links_id_products_post.rb +75 -269
  107. data/lib/moneykit/models/response401_reset_login_links_id_reset_post.rb +102 -0
  108. data/lib/moneykit/models/response401_trigger_test_link_webhook_event_webhooks_test_link_id_post.rb +102 -0
  109. data/lib/moneykit/models/response401_update_link_links_id_patch.rb +75 -269
  110. data/lib/moneykit/models/transaction.rb +35 -35
  111. data/lib/moneykit/models/transaction_diff.rb +36 -37
  112. data/lib/moneykit/models/transaction_sync_response.rb +23 -30
  113. data/lib/moneykit/models/transaction_type.rb +1 -1
  114. data/lib/moneykit/models/transaction_type_filter.rb +1 -1
  115. data/lib/moneykit/models/transactions_link_product.rb +18 -28
  116. data/lib/moneykit/models/transactions_product_settings.rb +16 -21
  117. data/lib/moneykit/models/update_link_request.rb +21 -28
  118. data/lib/moneykit/models/validation_error.rb +25 -28
  119. data/lib/moneykit/models/validation_error_location_inner.rb +101 -0
  120. data/lib/moneykit/models/webhook_link_test_event.rb +40 -0
  121. data/lib/moneykit/models/webhook_test_link_request.rb +252 -0
  122. data/lib/moneykit/models/webhook_test_link_response.rb +220 -0
  123. data/lib/moneykit/version.rb +2 -2
  124. data/lib/moneykit.rb +10 -29
  125. data/lib/plaid_compatible/money_kit_plaid_compatible/api/plaid_api.rb +684 -679
  126. data/lib/plaid_compatible/money_kit_plaid_compatible/api_client.rb +330 -330
  127. data/lib/plaid_compatible/money_kit_plaid_compatible/api_error.rb +33 -33
  128. data/lib/plaid_compatible/money_kit_plaid_compatible/configuration.rb +245 -245
  129. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_balance.rb +198 -198
  130. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_base.rb +213 -213
  131. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_identity.rb +223 -223
  132. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_subtype.rb +89 -89
  133. data/lib/plaid_compatible/money_kit_plaid_compatible/models/account_type.rb +22 -22
  134. data/lib/plaid_compatible/money_kit_plaid_compatible/models/accounts_get_request.rb +198 -198
  135. data/lib/plaid_compatible/money_kit_plaid_compatible/models/accounts_get_request_options.rb +175 -175
  136. data/lib/plaid_compatible/money_kit_plaid_compatible/models/accounts_get_response.rb +194 -194
  137. data/lib/plaid_compatible/money_kit_plaid_compatible/models/address.rb +183 -183
  138. data/lib/plaid_compatible/money_kit_plaid_compatible/models/address_data.rb +209 -209
  139. data/lib/plaid_compatible/money_kit_plaid_compatible/models/auth_get_numbers.rb +211 -209
  140. data/lib/plaid_compatible/money_kit_plaid_compatible/models/auth_get_request.rb +198 -198
  141. data/lib/plaid_compatible/money_kit_plaid_compatible/models/auth_get_request_options.rb +175 -175
  142. data/lib/plaid_compatible/money_kit_plaid_compatible/models/auth_get_response.rb +200 -200
  143. data/lib/plaid_compatible/money_kit_plaid_compatible/models/country_code.rb +19 -19
  144. data/lib/plaid_compatible/money_kit_plaid_compatible/models/email.rb +184 -184
  145. data/lib/plaid_compatible/money_kit_plaid_compatible/models/http_validation_error.rb +171 -171
  146. data/lib/plaid_compatible/money_kit_plaid_compatible/models/identity_get_request.rb +198 -198
  147. data/lib/plaid_compatible/money_kit_plaid_compatible/models/identity_get_request_options.rb +175 -175
  148. data/lib/plaid_compatible/money_kit_plaid_compatible/models/identity_get_response.rb +194 -194
  149. data/lib/plaid_compatible/money_kit_plaid_compatible/models/institution.rb +216 -214
  150. data/lib/plaid_compatible/money_kit_plaid_compatible/models/institutions_get_by_id_request.rb +202 -202
  151. data/lib/plaid_compatible/money_kit_plaid_compatible/models/institutions_get_by_id_response.rb +183 -183
  152. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item.rb +246 -245
  153. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_error_webhook.rb +208 -208
  154. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_get_request.rb +192 -192
  155. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_get_response.rb +189 -189
  156. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_public_token_exchange_request.rb +192 -192
  157. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_public_token_exchange_response.rb +193 -193
  158. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_remove_request.rb +192 -192
  159. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_remove_response.rb +175 -175
  160. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_status_investments.rb +182 -182
  161. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_status_last_webhook.rb +182 -182
  162. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_status_nullable.rb +183 -183
  163. data/lib/plaid_compatible/money_kit_plaid_compatible/models/item_status_transactions.rb +182 -182
  164. data/lib/plaid_compatible/money_kit_plaid_compatible/models/link_token_create_request.rb +268 -266
  165. data/lib/plaid_compatible/money_kit_plaid_compatible/models/link_token_create_request_user.rb +212 -212
  166. data/lib/plaid_compatible/money_kit_plaid_compatible/models/link_token_create_response.rb +193 -193
  167. data/lib/plaid_compatible/money_kit_plaid_compatible/models/numbers_ach.rb +202 -202
  168. data/lib/plaid_compatible/money_kit_plaid_compatible/models/numbers_bacs.rb +193 -193
  169. data/lib/plaid_compatible/money_kit_plaid_compatible/models/numbers_eft.rb +202 -202
  170. data/lib/plaid_compatible/money_kit_plaid_compatible/models/numbers_international.rb +193 -193
  171. data/lib/plaid_compatible/money_kit_plaid_compatible/models/owner.rb +211 -209
  172. data/lib/plaid_compatible/money_kit_plaid_compatible/models/personal_finance_category.rb +184 -184
  173. data/lib/plaid_compatible/money_kit_plaid_compatible/models/phone_number.rb +193 -193
  174. data/lib/plaid_compatible/money_kit_plaid_compatible/models/plaid_error.rb +247 -245
  175. data/lib/plaid_compatible/money_kit_plaid_compatible/models/plaid_error_type.rb +30 -30
  176. data/lib/plaid_compatible/money_kit_plaid_compatible/models/products.rb +20 -20
  177. data/lib/plaid_compatible/money_kit_plaid_compatible/models/removed_transaction.rb +174 -174
  178. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transaction.rb +283 -283
  179. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_get_request.rb +217 -217
  180. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_get_request_options.rb +211 -211
  181. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_get_response.rb +217 -217
  182. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_refresh_request.rb +192 -192
  183. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_refresh_response.rb +175 -175
  184. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_sync_request.rb +215 -215
  185. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_sync_request_options.rb +184 -184
  186. data/lib/plaid_compatible/money_kit_plaid_compatible/models/transactions_sync_response.rb +228 -228
  187. data/lib/plaid_compatible/money_kit_plaid_compatible/models/validation_error.rb +187 -187
  188. data/lib/plaid_compatible/money_kit_plaid_compatible/models/webhook_environment_values.rb +19 -19
  189. data/lib/plaid_compatible/money_kit_plaid_compatible/version.rb +1 -1
  190. data/lib/plaid_compatible/money_kit_plaid_compatible.rb +13 -13
  191. data/moneykit.gemspec +2 -1
  192. metadata +14 -5
@@ -5,7 +5,7 @@
5
5
  # The version of the OpenAPI document: 0.1.0
6
6
  #
7
7
  # Generated by: https://openapi-generator.tech
8
- # OpenAPI Generator version: 6.5.0
8
+ # OpenAPI Generator version: 7.1.0
9
9
  #
10
10
 
11
11
  require 'date'
@@ -16,34 +16,16 @@ module MoneyKit
16
16
  # MoneyKit's unique ID for the account. <p>The `account_id` is distinct from the institution's account number. For accounts that may change account numbers from time to time, such as credit cards, MoneyKit attempts to keep the `account_id` constant. However, if MoneyKit can't reconcile the new account data with the old data, the `account_id` may change.
17
17
  attr_accessor :account_id
18
18
 
19
- attr_accessor :account_type, :balances
19
+ # See <a href=/pages/account_types>Account Types</a> for an explanation of account types. Account types are dot-prefixed with one of `depository`, `investment`, `liability`, or `other`; or the value is `unknown`. <p>**Balances for `liability` accounts are reversed:** negative balances (the amount owed) are reported as positive values. For all other types of accounts, a negative balance indicates the amount owed.
20
+ attr_accessor :account_type
20
21
 
21
- # The account name, according to the institution. Note that some institutions allow the end user to nickname the account; in such cases this field may be the name assigned by the user
22
+ # The account name, according to the institution. Note that some institutions allow the end user to nickname the account; in such cases this field may be the name assigned by the user.
22
23
  attr_accessor :name
23
24
 
24
25
  # The last four characters (usually digits) of the account number. Note that this mask may be non-unique between accounts.
25
26
  attr_accessor :account_mask
26
27
 
27
- class EnumAttributeValidator
28
- attr_reader :datatype, :allowable_values
29
-
30
- def initialize(datatype, allowable_values)
31
- @allowable_values = allowable_values.map do |value|
32
- case datatype.to_s
33
- when /Integer/i
34
- value.to_i
35
- when /Float/i
36
- value.to_f
37
- else
38
- value
39
- end
40
- end
41
- end
42
-
43
- def valid?(value)
44
- !value || allowable_values.include?(value)
45
- end
46
- end
28
+ attr_accessor :balances
47
29
 
48
30
  # Attribute mapping from ruby-style variable name to JSON key.
49
31
  def self.attribute_map
@@ -65,18 +47,16 @@ module MoneyKit
65
47
  def self.openapi_types
66
48
  {
67
49
  'account_id': :String,
68
- 'account_type': :AccountType,
50
+ 'account_type': :String,
69
51
  'name': :String,
70
52
  'account_mask': :String,
71
- 'balances': :Balances
53
+ 'balances': :AccountBalances
72
54
  }
73
55
  end
74
56
 
75
57
  # List of attributes with nullable: true
76
58
  def self.openapi_nullable
77
- Set.new([
78
- :account_mask
79
- ])
59
+ Set.new([])
80
60
  end
81
61
 
82
62
  # Initializes the object
@@ -96,22 +76,21 @@ module MoneyKit
96
76
  h[k.to_sym] = v
97
77
  end
98
78
 
99
- self.account_id = attributes[:account_id] if attributes.key?(:account_id)
79
+ self.account_id = (attributes[:account_id] if attributes.key?(:account_id))
100
80
 
101
- self.account_type = attributes[:account_type] if attributes.key?(:account_type)
81
+ self.account_type = (attributes[:account_type] if attributes.key?(:account_type))
102
82
 
103
- self.name = attributes[:name] if attributes.key?(:name)
83
+ self.name = (attributes[:name] if attributes.key?(:name))
104
84
 
105
85
  self.account_mask = attributes[:account_mask] if attributes.key?(:account_mask)
106
86
 
107
- return unless attributes.key?(:balances)
108
-
109
- self.balances = attributes[:balances]
87
+ self.balances = (attributes[:balances] if attributes.key?(:balances))
110
88
  end
111
89
 
112
90
  # Show invalid properties with the reasons. Usually used together with valid?
113
91
  # @return Array for valid properties with the reasons
114
92
  def list_invalid_properties
93
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
115
94
  invalid_properties = []
116
95
  invalid_properties.push('invalid value for "account_id", account_id cannot be nil.') if @account_id.nil?
117
96
 
@@ -127,6 +106,7 @@ module MoneyKit
127
106
  # Check to see if the all the properties in the model are valid
128
107
  # @return true if the model is valid
129
108
  def valid?
109
+ warn '[DEPRECATED] the `valid?` method is obsolete'
130
110
  return false if @account_id.nil?
131
111
  return false if @account_type.nil?
132
112
  return false if @name.nil?
@@ -164,40 +144,33 @@ module MoneyKit
164
144
  # @param [Hash] attributes Model attributes in the form of hash
165
145
  # @return [Object] Returns the model itself
166
146
  def self.build_from_hash(attributes)
167
- new.build_from_hash(attributes)
168
- end
169
-
170
- # Builds the object from hash
171
- # @param [Hash] attributes Model attributes in the form of hash
172
- # @return [Object] Returns the model itself
173
- def build_from_hash(attributes)
174
147
  return nil unless attributes.is_a?(Hash)
175
148
 
176
149
  attributes = attributes.transform_keys(&:to_sym)
177
- self.class.openapi_types.each_pair do |key, type|
178
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
179
- send("#{key}=", nil)
150
+ transformed_hash = {}
151
+ openapi_types.each_pair do |key, type|
152
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
153
+ transformed_hash["#{key}"] = nil
180
154
  elsif type =~ /\AArray<(.*)>/i
181
155
  # check to ensure the input is an array given that the attribute
182
156
  # is documented as an array but the input is not
183
- if attributes[self.class.attribute_map[key]].is_a?(Array)
184
- send("#{key}=", attributes[self.class.attribute_map[key]].map do |v|
185
- _deserialize(::Regexp.last_match(1), v)
186
- end)
157
+ if attributes[attribute_map[key]].is_a?(Array)
158
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map do |v|
159
+ _deserialize(::Regexp.last_match(1), v)
160
+ end
187
161
  end
188
- elsif !attributes[self.class.attribute_map[key]].nil?
189
- send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
162
+ elsif !attributes[attribute_map[key]].nil?
163
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
190
164
  end
191
165
  end
192
-
193
- self
166
+ new(transformed_hash)
194
167
  end
195
168
 
196
169
  # Deserializes the data based on type
197
170
  # @param string type Data type
198
171
  # @param string value Value to be deserialized
199
172
  # @return [Object] Deserialized data
200
- def _deserialize(type, value)
173
+ def self._deserialize(type, value)
201
174
  case type.to_sym
202
175
  when :Time
203
176
  Time.parse(value)
@@ -232,7 +205,7 @@ module MoneyKit
232
205
  else # model
233
206
  # models (e.g. Pet) or oneOf
234
207
  klass = MoneyKit.const_get(type)
235
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
208
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
236
209
  end
237
210
  end
238
211
 
@@ -5,7 +5,7 @@
5
5
  # The version of the OpenAPI document: 0.1.0
6
6
  #
7
7
  # Generated by: https://openapi-generator.tech
8
- # OpenAPI Generator version: 6.5.0
8
+ # OpenAPI Generator version: 7.1.0
9
9
  #
10
10
 
11
11
  require 'date'
@@ -72,11 +72,7 @@ module MoneyKit
72
72
 
73
73
  # List of attributes with nullable: true
74
74
  def self.openapi_nullable
75
- Set.new(%i[
76
- available
77
- current
78
- limit
79
- ])
75
+ Set.new([])
80
76
  end
81
77
 
82
78
  # Initializes the object
@@ -97,7 +93,7 @@ module MoneyKit
97
93
  h[k.to_sym] = v
98
94
  end
99
95
 
100
- self.currency = attributes[:currency] if attributes.key?(:currency)
96
+ self.currency = (attributes[:currency] if attributes.key?(:currency))
101
97
 
102
98
  self.available = attributes[:available] if attributes.key?(:available)
103
99
 
@@ -111,6 +107,7 @@ module MoneyKit
111
107
  # Show invalid properties with the reasons. Usually used together with valid?
112
108
  # @return Array for valid properties with the reasons
113
109
  def list_invalid_properties
110
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
114
111
  invalid_properties = []
115
112
  invalid_properties.push('invalid value for "currency", currency cannot be nil.') if @currency.nil?
116
113
 
@@ -120,6 +117,7 @@ module MoneyKit
120
117
  # Check to see if the all the properties in the model are valid
121
118
  # @return true if the model is valid
122
119
  def valid?
120
+ warn '[DEPRECATED] the `valid?` method is obsolete'
123
121
  return false if @currency.nil?
124
122
 
125
123
  true
@@ -153,40 +151,33 @@ module MoneyKit
153
151
  # @param [Hash] attributes Model attributes in the form of hash
154
152
  # @return [Object] Returns the model itself
155
153
  def self.build_from_hash(attributes)
156
- new.build_from_hash(attributes)
157
- end
158
-
159
- # Builds the object from hash
160
- # @param [Hash] attributes Model attributes in the form of hash
161
- # @return [Object] Returns the model itself
162
- def build_from_hash(attributes)
163
154
  return nil unless attributes.is_a?(Hash)
164
155
 
165
156
  attributes = attributes.transform_keys(&:to_sym)
166
- self.class.openapi_types.each_pair do |key, type|
167
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
168
- send("#{key}=", nil)
157
+ transformed_hash = {}
158
+ openapi_types.each_pair do |key, type|
159
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
160
+ transformed_hash["#{key}"] = nil
169
161
  elsif type =~ /\AArray<(.*)>/i
170
162
  # check to ensure the input is an array given that the attribute
171
163
  # is documented as an array but the input is not
172
- if attributes[self.class.attribute_map[key]].is_a?(Array)
173
- send("#{key}=", attributes[self.class.attribute_map[key]].map do |v|
174
- _deserialize(::Regexp.last_match(1), v)
175
- end)
164
+ if attributes[attribute_map[key]].is_a?(Array)
165
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map do |v|
166
+ _deserialize(::Regexp.last_match(1), v)
167
+ end
176
168
  end
177
- elsif !attributes[self.class.attribute_map[key]].nil?
178
- send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
169
+ elsif !attributes[attribute_map[key]].nil?
170
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
179
171
  end
180
172
  end
181
-
182
- self
173
+ new(transformed_hash)
183
174
  end
184
175
 
185
176
  # Deserializes the data based on type
186
177
  # @param string type Data type
187
178
  # @param string value Value to be deserialized
188
179
  # @return [Object] Deserialized data
189
- def _deserialize(type, value)
180
+ def self._deserialize(type, value)
190
181
  case type.to_sym
191
182
  when :Time
192
183
  Time.parse(value)
@@ -221,7 +212,7 @@ module MoneyKit
221
212
  else # model
222
213
  # models (e.g. Pet) or oneOf
223
214
  klass = MoneyKit.const_get(type)
224
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
215
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
225
216
  end
226
217
  end
227
218
 
@@ -5,7 +5,7 @@
5
5
  # The version of the OpenAPI document: 0.1.0
6
6
  #
7
7
  # Generated by: https://openapi-generator.tech
8
- # OpenAPI Generator version: 6.5.0
8
+ # OpenAPI Generator version: 7.1.0
9
9
  #
10
10
 
11
11
  require 'date'
@@ -41,9 +41,7 @@ module MoneyKit
41
41
 
42
42
  # List of attributes with nullable: true
43
43
  def self.openapi_nullable
44
- Set.new([
45
- :last_synced_at
46
- ])
44
+ Set.new([])
47
45
  end
48
46
 
49
47
  # Initializes the object
@@ -64,8 +62,12 @@ module MoneyKit
64
62
  h[k.to_sym] = v
65
63
  end
66
64
 
67
- if attributes.key?(:accounts) && (value = attributes[:accounts]).is_a?(Array)
68
- self.accounts = value
65
+ if attributes.key?(:accounts)
66
+ if (value = attributes[:accounts]).is_a?(Array)
67
+ self.accounts = value
68
+ end
69
+ else
70
+ self.accounts = nil
69
71
  end
70
72
 
71
73
  return unless attributes.key?(:last_synced_at)
@@ -76,6 +78,7 @@ module MoneyKit
76
78
  # Show invalid properties with the reasons. Usually used together with valid?
77
79
  # @return Array for valid properties with the reasons
78
80
  def list_invalid_properties
81
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
79
82
  invalid_properties = []
80
83
  invalid_properties.push('invalid value for "accounts", accounts cannot be nil.') if @accounts.nil?
81
84
 
@@ -85,6 +88,7 @@ module MoneyKit
85
88
  # Check to see if the all the properties in the model are valid
86
89
  # @return true if the model is valid
87
90
  def valid?
91
+ warn '[DEPRECATED] the `valid?` method is obsolete'
88
92
  return false if @accounts.nil?
89
93
 
90
94
  true
@@ -116,40 +120,33 @@ module MoneyKit
116
120
  # @param [Hash] attributes Model attributes in the form of hash
117
121
  # @return [Object] Returns the model itself
118
122
  def self.build_from_hash(attributes)
119
- new.build_from_hash(attributes)
120
- end
121
-
122
- # Builds the object from hash
123
- # @param [Hash] attributes Model attributes in the form of hash
124
- # @return [Object] Returns the model itself
125
- def build_from_hash(attributes)
126
123
  return nil unless attributes.is_a?(Hash)
127
124
 
128
125
  attributes = attributes.transform_keys(&:to_sym)
129
- self.class.openapi_types.each_pair do |key, type|
130
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
131
- send("#{key}=", nil)
126
+ transformed_hash = {}
127
+ openapi_types.each_pair do |key, type|
128
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
129
+ transformed_hash["#{key}"] = nil
132
130
  elsif type =~ /\AArray<(.*)>/i
133
131
  # check to ensure the input is an array given that the attribute
134
132
  # is documented as an array but the input is not
135
- if attributes[self.class.attribute_map[key]].is_a?(Array)
136
- send("#{key}=", attributes[self.class.attribute_map[key]].map do |v|
137
- _deserialize(::Regexp.last_match(1), v)
138
- end)
133
+ if attributes[attribute_map[key]].is_a?(Array)
134
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map do |v|
135
+ _deserialize(::Regexp.last_match(1), v)
136
+ end
139
137
  end
140
- elsif !attributes[self.class.attribute_map[key]].nil?
141
- send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
138
+ elsif !attributes[attribute_map[key]].nil?
139
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
142
140
  end
143
141
  end
144
-
145
- self
142
+ new(transformed_hash)
146
143
  end
147
144
 
148
145
  # Deserializes the data based on type
149
146
  # @param string type Data type
150
147
  # @param string value Value to be deserialized
151
148
  # @return [Object] Deserialized data
152
- def _deserialize(type, value)
149
+ def self._deserialize(type, value)
153
150
  case type.to_sym
154
151
  when :Time
155
152
  Time.parse(value)
@@ -184,7 +181,7 @@ module MoneyKit
184
181
  else # model
185
182
  # models (e.g. Pet) or oneOf
186
183
  klass = MoneyKit.const_get(type)
187
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
184
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
188
185
  end
189
186
  end
190
187
 
@@ -5,7 +5,7 @@
5
5
  # The version of the OpenAPI document: 0.1.0
6
6
  #
7
7
  # Generated by: https://openapi-generator.tech
8
- # OpenAPI Generator version: 6.5.0
8
+ # OpenAPI Generator version: 7.1.0
9
9
  #
10
10
 
11
11
  require 'date'
@@ -16,37 +16,16 @@ module MoneyKit
16
16
  # MoneyKit's unique ID for the account. <p>The `account_id` is distinct from the institution's account number. For accounts that may change account numbers from time to time, such as credit cards, MoneyKit attempts to keep the `account_id` constant. However, if MoneyKit can't reconcile the new account data with the old data, the `account_id` may change.
17
17
  attr_accessor :account_id
18
18
 
19
- attr_accessor :account_type, :balances
19
+ # See <a href=/pages/account_types>Account Types</a> for an explanation of account types. Account types are dot-prefixed with one of `depository`, `investment`, `liability`, or `other`; or the value is `unknown`. <p>**Balances for `liability` accounts are reversed:** negative balances (the amount owed) are reported as positive values. For all other types of accounts, a negative balance indicates the amount owed.
20
+ attr_accessor :account_type
20
21
 
21
- # The account name, according to the institution. Note that some institutions allow the end user to nickname the account; in such cases this field may be the name assigned by the user
22
+ # The account name, according to the institution. Note that some institutions allow the end user to nickname the account; in such cases this field may be the name assigned by the user.
22
23
  attr_accessor :name
23
24
 
24
25
  # The last four characters (usually digits) of the account number. Note that this mask may be non-unique between accounts.
25
26
  attr_accessor :account_mask
26
27
 
27
- # A list of owners associated with the account.
28
- attr_accessor :owners
29
-
30
- class EnumAttributeValidator
31
- attr_reader :datatype, :allowable_values
32
-
33
- def initialize(datatype, allowable_values)
34
- @allowable_values = allowable_values.map do |value|
35
- case datatype.to_s
36
- when /Integer/i
37
- value.to_i
38
- when /Float/i
39
- value.to_f
40
- else
41
- value
42
- end
43
- end
44
- end
45
-
46
- def valid?(value)
47
- !value || allowable_values.include?(value)
48
- end
49
- end
28
+ attr_accessor :balances, :owners
50
29
 
51
30
  # Attribute mapping from ruby-style variable name to JSON key.
52
31
  def self.attribute_map
@@ -69,19 +48,17 @@ module MoneyKit
69
48
  def self.openapi_types
70
49
  {
71
50
  'account_id': :String,
72
- 'account_type': :AccountType,
51
+ 'account_type': :String,
73
52
  'name': :String,
74
53
  'account_mask': :String,
75
- 'balances': :Balances,
54
+ 'balances': :AccountBalances,
76
55
  'owners': :'Array<Owner>'
77
56
  }
78
57
  end
79
58
 
80
59
  # List of attributes with nullable: true
81
60
  def self.openapi_nullable
82
- Set.new([
83
- :account_mask
84
- ])
61
+ Set.new([])
85
62
  end
86
63
 
87
64
  # Initializes the object
@@ -102,25 +79,29 @@ module MoneyKit
102
79
  h[k.to_sym] = v
103
80
  end
104
81
 
105
- self.account_id = attributes[:account_id] if attributes.key?(:account_id)
82
+ self.account_id = (attributes[:account_id] if attributes.key?(:account_id))
106
83
 
107
- self.account_type = attributes[:account_type] if attributes.key?(:account_type)
84
+ self.account_type = (attributes[:account_type] if attributes.key?(:account_type))
108
85
 
109
- self.name = attributes[:name] if attributes.key?(:name)
86
+ self.name = (attributes[:name] if attributes.key?(:name))
110
87
 
111
88
  self.account_mask = attributes[:account_mask] if attributes.key?(:account_mask)
112
89
 
113
- self.balances = attributes[:balances] if attributes.key?(:balances)
90
+ self.balances = (attributes[:balances] if attributes.key?(:balances))
114
91
 
115
- return unless attributes.key?(:owners)
116
- return unless (value = attributes[:owners]).is_a?(Array)
117
-
118
- self.owners = value
92
+ if attributes.key?(:owners)
93
+ if (value = attributes[:owners]).is_a?(Array)
94
+ self.owners = value
95
+ end
96
+ else
97
+ self.owners = nil
98
+ end
119
99
  end
120
100
 
121
101
  # Show invalid properties with the reasons. Usually used together with valid?
122
102
  # @return Array for valid properties with the reasons
123
103
  def list_invalid_properties
104
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
124
105
  invalid_properties = []
125
106
  invalid_properties.push('invalid value for "account_id", account_id cannot be nil.') if @account_id.nil?
126
107
 
@@ -138,6 +119,7 @@ module MoneyKit
138
119
  # Check to see if the all the properties in the model are valid
139
120
  # @return true if the model is valid
140
121
  def valid?
122
+ warn '[DEPRECATED] the `valid?` method is obsolete'
141
123
  return false if @account_id.nil?
142
124
  return false if @account_type.nil?
143
125
  return false if @name.nil?
@@ -177,40 +159,33 @@ module MoneyKit
177
159
  # @param [Hash] attributes Model attributes in the form of hash
178
160
  # @return [Object] Returns the model itself
179
161
  def self.build_from_hash(attributes)
180
- new.build_from_hash(attributes)
181
- end
182
-
183
- # Builds the object from hash
184
- # @param [Hash] attributes Model attributes in the form of hash
185
- # @return [Object] Returns the model itself
186
- def build_from_hash(attributes)
187
162
  return nil unless attributes.is_a?(Hash)
188
163
 
189
164
  attributes = attributes.transform_keys(&:to_sym)
190
- self.class.openapi_types.each_pair do |key, type|
191
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
192
- send("#{key}=", nil)
165
+ transformed_hash = {}
166
+ openapi_types.each_pair do |key, type|
167
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
168
+ transformed_hash["#{key}"] = nil
193
169
  elsif type =~ /\AArray<(.*)>/i
194
170
  # check to ensure the input is an array given that the attribute
195
171
  # is documented as an array but the input is not
196
- if attributes[self.class.attribute_map[key]].is_a?(Array)
197
- send("#{key}=", attributes[self.class.attribute_map[key]].map do |v|
198
- _deserialize(::Regexp.last_match(1), v)
199
- end)
172
+ if attributes[attribute_map[key]].is_a?(Array)
173
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map do |v|
174
+ _deserialize(::Regexp.last_match(1), v)
175
+ end
200
176
  end
201
- elsif !attributes[self.class.attribute_map[key]].nil?
202
- send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
177
+ elsif !attributes[attribute_map[key]].nil?
178
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
203
179
  end
204
180
  end
205
-
206
- self
181
+ new(transformed_hash)
207
182
  end
208
183
 
209
184
  # Deserializes the data based on type
210
185
  # @param string type Data type
211
186
  # @param string value Value to be deserialized
212
187
  # @return [Object] Deserialized data
213
- def _deserialize(type, value)
188
+ def self._deserialize(type, value)
214
189
  case type.to_sym
215
190
  when :Time
216
191
  Time.parse(value)
@@ -245,7 +220,7 @@ module MoneyKit
245
220
  else # model
246
221
  # models (e.g. Pet) or oneOf
247
222
  klass = MoneyKit.const_get(type)
248
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
223
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
249
224
  end
250
225
  end
251
226