moneykit 0.0.3 → 0.0.5

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 (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'
@@ -13,17 +13,15 @@ require 'time'
13
13
 
14
14
  module MoneyKit
15
15
  class AccountNumbers
16
- # If true, only institutions supporting this product will be available.
17
- attr_accessor :required
18
-
19
- # If true, the data will be available as soon as possible after linking, even if `required` is false. If false, the data will be available after the first manual data refresh.
20
- attr_accessor :prefetch
16
+ attr_accessor :ach, :bacs, :eft, :international
21
17
 
22
18
  # Attribute mapping from ruby-style variable name to JSON key.
23
19
  def self.attribute_map
24
20
  {
25
- 'required': :required,
26
- 'prefetch': :prefetch
21
+ 'ach': :ach,
22
+ 'bacs': :bacs,
23
+ 'eft': :eft,
24
+ 'international': :international
27
25
  }
28
26
  end
29
27
 
@@ -35,8 +33,10 @@ module MoneyKit
35
33
  # Attribute type mapping.
36
34
  def self.openapi_types
37
35
  {
38
- 'required': :Boolean,
39
- 'prefetch': :Boolean
36
+ 'ach': :'Array<AchNumber>',
37
+ 'bacs': :'Array<BacsNumber>',
38
+ 'eft': :'Array<EftNumber>',
39
+ 'international': :'Array<InternationalNumber>'
40
40
  }
41
41
  end
42
42
 
@@ -45,13 +45,6 @@ module MoneyKit
45
45
  Set.new([])
46
46
  end
47
47
 
48
- # List of class defined in allOf (OpenAPI v3)
49
- def self.openapi_all_of
50
- [
51
- :AccountNumbersProductSettings
52
- ]
53
- end
54
-
55
48
  # Initializes the object
56
49
  # @param [Hash] attributes Model attributes in the form of hash
57
50
  def initialize(attributes = {})
@@ -70,28 +63,64 @@ module MoneyKit
70
63
  h[k.to_sym] = v
71
64
  end
72
65
 
73
- self.required = if attributes.key?(:required)
74
- attributes[:required]
75
- else
76
- false
77
- end
66
+ if attributes.key?(:ach)
67
+ if (value = attributes[:ach]).is_a?(Array)
68
+ self.ach = value
69
+ end
70
+ else
71
+ self.ach = nil
72
+ end
73
+
74
+ if attributes.key?(:bacs)
75
+ if (value = attributes[:bacs]).is_a?(Array)
76
+ self.bacs = value
77
+ end
78
+ else
79
+ self.bacs = nil
80
+ end
81
+
82
+ if attributes.key?(:eft)
83
+ if (value = attributes[:eft]).is_a?(Array)
84
+ self.eft = value
85
+ end
86
+ else
87
+ self.eft = nil
88
+ end
78
89
 
79
- self.prefetch = if attributes.key?(:prefetch)
80
- attributes[:prefetch]
81
- else
82
- false
83
- end
90
+ if attributes.key?(:international)
91
+ if (value = attributes[:international]).is_a?(Array)
92
+ self.international = value
93
+ end
94
+ else
95
+ self.international = nil
96
+ end
84
97
  end
85
98
 
86
99
  # Show invalid properties with the reasons. Usually used together with valid?
87
100
  # @return Array for valid properties with the reasons
88
101
  def list_invalid_properties
89
- []
102
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
103
+ invalid_properties = []
104
+ invalid_properties.push('invalid value for "ach", ach cannot be nil.') if @ach.nil?
105
+
106
+ invalid_properties.push('invalid value for "bacs", bacs cannot be nil.') if @bacs.nil?
107
+
108
+ invalid_properties.push('invalid value for "eft", eft cannot be nil.') if @eft.nil?
109
+
110
+ invalid_properties.push('invalid value for "international", international cannot be nil.') if @international.nil?
111
+
112
+ invalid_properties
90
113
  end
91
114
 
92
115
  # Check to see if the all the properties in the model are valid
93
116
  # @return true if the model is valid
94
117
  def valid?
118
+ warn '[DEPRECATED] the `valid?` method is obsolete'
119
+ return false if @ach.nil?
120
+ return false if @bacs.nil?
121
+ return false if @eft.nil?
122
+ return false if @international.nil?
123
+
95
124
  true
96
125
  end
97
126
 
@@ -101,8 +130,10 @@ module MoneyKit
101
130
  return true if equal?(other)
102
131
 
103
132
  self.class == other.class &&
104
- required == other.required &&
105
- prefetch == other.prefetch
133
+ ach == other.ach &&
134
+ bacs == other.bacs &&
135
+ eft == other.eft &&
136
+ international == other.international
106
137
  end
107
138
 
108
139
  # @see the `==` method
@@ -114,47 +145,40 @@ module MoneyKit
114
145
  # Calculates hash code according to all attributes.
115
146
  # @return [Integer] Hash code
116
147
  def hash
117
- [required, prefetch].hash
148
+ [ach, bacs, eft, international].hash
118
149
  end
119
150
 
120
151
  # Builds the object from hash
121
152
  # @param [Hash] attributes Model attributes in the form of hash
122
153
  # @return [Object] Returns the model itself
123
154
  def self.build_from_hash(attributes)
124
- new.build_from_hash(attributes)
125
- end
126
-
127
- # Builds the object from hash
128
- # @param [Hash] attributes Model attributes in the form of hash
129
- # @return [Object] Returns the model itself
130
- def build_from_hash(attributes)
131
155
  return nil unless attributes.is_a?(Hash)
132
156
 
133
157
  attributes = attributes.transform_keys(&:to_sym)
134
- self.class.openapi_types.each_pair do |key, type|
135
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
136
- send("#{key}=", nil)
158
+ transformed_hash = {}
159
+ openapi_types.each_pair do |key, type|
160
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
161
+ transformed_hash["#{key}"] = nil
137
162
  elsif type =~ /\AArray<(.*)>/i
138
163
  # check to ensure the input is an array given that the attribute
139
164
  # is documented as an array but the input is not
140
- if attributes[self.class.attribute_map[key]].is_a?(Array)
141
- send("#{key}=", attributes[self.class.attribute_map[key]].map do |v|
142
- _deserialize(::Regexp.last_match(1), v)
143
- end)
165
+ if attributes[attribute_map[key]].is_a?(Array)
166
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map do |v|
167
+ _deserialize(::Regexp.last_match(1), v)
168
+ end
144
169
  end
145
- elsif !attributes[self.class.attribute_map[key]].nil?
146
- send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
170
+ elsif !attributes[attribute_map[key]].nil?
171
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
147
172
  end
148
173
  end
149
-
150
- self
174
+ new(transformed_hash)
151
175
  end
152
176
 
153
177
  # Deserializes the data based on type
154
178
  # @param string type Data type
155
179
  # @param string value Value to be deserialized
156
180
  # @return [Object] Deserialized data
157
- def _deserialize(type, value)
181
+ def self._deserialize(type, value)
158
182
  case type.to_sym
159
183
  when :Time
160
184
  Time.parse(value)
@@ -189,7 +213,7 @@ module MoneyKit
189
213
  else # model
190
214
  # models (e.g. Pet) or oneOf
191
215
  klass = MoneyKit.const_get(type)
192
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
216
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
193
217
  end
194
218
  end
195
219
 
@@ -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'
@@ -46,10 +46,7 @@ module MoneyKit
46
46
 
47
47
  # List of attributes with nullable: true
48
48
  def self.openapi_nullable
49
- Set.new(%i[
50
- refreshed_at
51
- last_attempted_at
52
- ])
49
+ Set.new([])
53
50
  end
54
51
 
55
52
  # Initializes the object
@@ -74,14 +71,13 @@ module MoneyKit
74
71
 
75
72
  self.last_attempted_at = attributes[:last_attempted_at] if attributes.key?(:last_attempted_at)
76
73
 
77
- return unless attributes.key?(:settings)
78
-
79
- self.settings = attributes[:settings]
74
+ self.settings = (attributes[:settings] if attributes.key?(:settings))
80
75
  end
81
76
 
82
77
  # Show invalid properties with the reasons. Usually used together with valid?
83
78
  # @return Array for valid properties with the reasons
84
79
  def list_invalid_properties
80
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
85
81
  invalid_properties = []
86
82
  invalid_properties.push('invalid value for "settings", settings cannot be nil.') if @settings.nil?
87
83
 
@@ -91,6 +87,7 @@ module MoneyKit
91
87
  # Check to see if the all the properties in the model are valid
92
88
  # @return true if the model is valid
93
89
  def valid?
90
+ warn '[DEPRECATED] the `valid?` method is obsolete'
94
91
  return false if @settings.nil?
95
92
 
96
93
  true
@@ -123,40 +120,33 @@ module MoneyKit
123
120
  # @param [Hash] attributes Model attributes in the form of hash
124
121
  # @return [Object] Returns the model itself
125
122
  def self.build_from_hash(attributes)
126
- new.build_from_hash(attributes)
127
- end
128
-
129
- # Builds the object from hash
130
- # @param [Hash] attributes Model attributes in the form of hash
131
- # @return [Object] Returns the model itself
132
- def build_from_hash(attributes)
133
123
  return nil unless attributes.is_a?(Hash)
134
124
 
135
125
  attributes = attributes.transform_keys(&:to_sym)
136
- self.class.openapi_types.each_pair do |key, type|
137
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
138
- 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
139
130
  elsif type =~ /\AArray<(.*)>/i
140
131
  # check to ensure the input is an array given that the attribute
141
132
  # is documented as an array but the input is not
142
- if attributes[self.class.attribute_map[key]].is_a?(Array)
143
- send("#{key}=", attributes[self.class.attribute_map[key]].map do |v|
144
- _deserialize(::Regexp.last_match(1), v)
145
- 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
146
137
  end
147
- elsif !attributes[self.class.attribute_map[key]].nil?
148
- 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]])
149
140
  end
150
141
  end
151
-
152
- self
142
+ new(transformed_hash)
153
143
  end
154
144
 
155
145
  # Deserializes the data based on type
156
146
  # @param string type Data type
157
147
  # @param string value Value to be deserialized
158
148
  # @return [Object] Deserialized data
159
- def _deserialize(type, value)
149
+ def self._deserialize(type, value)
160
150
  case type.to_sym
161
151
  when :Time
162
152
  Time.parse(value)
@@ -191,7 +181,7 @@ module MoneyKit
191
181
  else # model
192
182
  # models (e.g. Pet) or oneOf
193
183
  klass = MoneyKit.const_get(type)
194
- 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)
195
185
  end
196
186
  end
197
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'
@@ -79,12 +79,14 @@ module MoneyKit
79
79
  # Show invalid properties with the reasons. Usually used together with valid?
80
80
  # @return Array for valid properties with the reasons
81
81
  def list_invalid_properties
82
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
82
83
  []
83
84
  end
84
85
 
85
86
  # Check to see if the all the properties in the model are valid
86
87
  # @return true if the model is valid
87
88
  def valid?
89
+ warn '[DEPRECATED] the `valid?` method is obsolete'
88
90
  true
89
91
  end
90
92
 
@@ -114,40 +116,33 @@ module MoneyKit
114
116
  # @param [Hash] attributes Model attributes in the form of hash
115
117
  # @return [Object] Returns the model itself
116
118
  def self.build_from_hash(attributes)
117
- new.build_from_hash(attributes)
118
- end
119
-
120
- # Builds the object from hash
121
- # @param [Hash] attributes Model attributes in the form of hash
122
- # @return [Object] Returns the model itself
123
- def build_from_hash(attributes)
124
119
  return nil unless attributes.is_a?(Hash)
125
120
 
126
121
  attributes = attributes.transform_keys(&:to_sym)
127
- self.class.openapi_types.each_pair do |key, type|
128
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
129
- send("#{key}=", nil)
122
+ transformed_hash = {}
123
+ openapi_types.each_pair do |key, type|
124
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
125
+ transformed_hash["#{key}"] = nil
130
126
  elsif type =~ /\AArray<(.*)>/i
131
127
  # check to ensure the input is an array given that the attribute
132
128
  # is documented as an array but the input is not
133
- if attributes[self.class.attribute_map[key]].is_a?(Array)
134
- send("#{key}=", attributes[self.class.attribute_map[key]].map do |v|
135
- _deserialize(::Regexp.last_match(1), v)
136
- end)
129
+ if attributes[attribute_map[key]].is_a?(Array)
130
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map do |v|
131
+ _deserialize(::Regexp.last_match(1), v)
132
+ end
137
133
  end
138
- elsif !attributes[self.class.attribute_map[key]].nil?
139
- send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
134
+ elsif !attributes[attribute_map[key]].nil?
135
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
140
136
  end
141
137
  end
142
-
143
- self
138
+ new(transformed_hash)
144
139
  end
145
140
 
146
141
  # Deserializes the data based on type
147
142
  # @param string type Data type
148
143
  # @param string value Value to be deserialized
149
144
  # @return [Object] Deserialized data
150
- def _deserialize(type, value)
145
+ def self._deserialize(type, value)
151
146
  case type.to_sym
152
147
  when :Time
153
148
  Time.parse(value)
@@ -182,7 +177,7 @@ module MoneyKit
182
177
  else # model
183
178
  # models (e.g. Pet) or oneOf
184
179
  klass = MoneyKit.const_get(type)
185
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
180
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
186
181
  end
187
182
  end
188
183
 
@@ -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, :numbers
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, :numbers
47
29
 
48
30
  # Attribute mapping from ruby-style variable name to JSON key.
49
31
  def self.attribute_map
@@ -66,19 +48,17 @@ module MoneyKit
66
48
  def self.openapi_types
67
49
  {
68
50
  'account_id': :String,
69
- 'account_type': :AccountType,
51
+ 'account_type': :String,
70
52
  'name': :String,
71
53
  'account_mask': :String,
72
- 'balances': :Balances,
73
- 'numbers': :Numbers
54
+ 'balances': :AccountBalances,
55
+ 'numbers': :AccountNumbers
74
56
  }
75
57
  end
76
58
 
77
59
  # List of attributes with nullable: true
78
60
  def self.openapi_nullable
79
- Set.new([
80
- :account_mask
81
- ])
61
+ Set.new([])
82
62
  end
83
63
 
84
64
  # Initializes the object
@@ -99,24 +79,23 @@ module MoneyKit
99
79
  h[k.to_sym] = v
100
80
  end
101
81
 
102
- self.account_id = attributes[:account_id] if attributes.key?(:account_id)
82
+ self.account_id = (attributes[:account_id] if attributes.key?(:account_id))
103
83
 
104
- self.account_type = attributes[:account_type] if attributes.key?(:account_type)
84
+ self.account_type = (attributes[:account_type] if attributes.key?(:account_type))
105
85
 
106
- self.name = attributes[:name] if attributes.key?(:name)
86
+ self.name = (attributes[:name] if attributes.key?(:name))
107
87
 
108
88
  self.account_mask = attributes[:account_mask] if attributes.key?(:account_mask)
109
89
 
110
- self.balances = attributes[:balances] if attributes.key?(:balances)
111
-
112
- return unless attributes.key?(:numbers)
90
+ self.balances = (attributes[:balances] if attributes.key?(:balances))
113
91
 
114
- self.numbers = attributes[:numbers]
92
+ self.numbers = (attributes[:numbers] if attributes.key?(:numbers))
115
93
  end
116
94
 
117
95
  # Show invalid properties with the reasons. Usually used together with valid?
118
96
  # @return Array for valid properties with the reasons
119
97
  def list_invalid_properties
98
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
120
99
  invalid_properties = []
121
100
  invalid_properties.push('invalid value for "account_id", account_id cannot be nil.') if @account_id.nil?
122
101
 
@@ -134,6 +113,7 @@ module MoneyKit
134
113
  # Check to see if the all the properties in the model are valid
135
114
  # @return true if the model is valid
136
115
  def valid?
116
+ warn '[DEPRECATED] the `valid?` method is obsolete'
137
117
  return false if @account_id.nil?
138
118
  return false if @account_type.nil?
139
119
  return false if @name.nil?
@@ -173,40 +153,33 @@ module MoneyKit
173
153
  # @param [Hash] attributes Model attributes in the form of hash
174
154
  # @return [Object] Returns the model itself
175
155
  def self.build_from_hash(attributes)
176
- new.build_from_hash(attributes)
177
- end
178
-
179
- # Builds the object from hash
180
- # @param [Hash] attributes Model attributes in the form of hash
181
- # @return [Object] Returns the model itself
182
- def build_from_hash(attributes)
183
156
  return nil unless attributes.is_a?(Hash)
184
157
 
185
158
  attributes = attributes.transform_keys(&:to_sym)
186
- self.class.openapi_types.each_pair do |key, type|
187
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
188
- send("#{key}=", nil)
159
+ transformed_hash = {}
160
+ openapi_types.each_pair do |key, type|
161
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
162
+ transformed_hash["#{key}"] = nil
189
163
  elsif type =~ /\AArray<(.*)>/i
190
164
  # check to ensure the input is an array given that the attribute
191
165
  # is documented as an array but the input is not
192
- if attributes[self.class.attribute_map[key]].is_a?(Array)
193
- send("#{key}=", attributes[self.class.attribute_map[key]].map do |v|
194
- _deserialize(::Regexp.last_match(1), v)
195
- end)
166
+ if attributes[attribute_map[key]].is_a?(Array)
167
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map do |v|
168
+ _deserialize(::Regexp.last_match(1), v)
169
+ end
196
170
  end
197
- elsif !attributes[self.class.attribute_map[key]].nil?
198
- send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
171
+ elsif !attributes[attribute_map[key]].nil?
172
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
199
173
  end
200
174
  end
201
-
202
- self
175
+ new(transformed_hash)
203
176
  end
204
177
 
205
178
  # Deserializes the data based on type
206
179
  # @param string type Data type
207
180
  # @param string value Value to be deserialized
208
181
  # @return [Object] Deserialized data
209
- def _deserialize(type, value)
182
+ def self._deserialize(type, value)
210
183
  case type.to_sym
211
184
  when :Time
212
185
  Time.parse(value)
@@ -241,7 +214,7 @@ module MoneyKit
241
214
  else # model
242
215
  # models (e.g. Pet) or oneOf
243
216
  klass = MoneyKit.const_get(type)
244
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
217
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
245
218
  end
246
219
  end
247
220
 
@@ -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'
@@ -42,10 +42,7 @@ module MoneyKit
42
42
 
43
43
  # List of attributes with nullable: true
44
44
  def self.openapi_nullable
45
- Set.new(%i[
46
- refreshed_at
47
- last_attempted_at
48
- ])
45
+ Set.new([])
49
46
  end
50
47
 
51
48
  # Initializes the object
@@ -76,12 +73,14 @@ module MoneyKit
76
73
  # Show invalid properties with the reasons. Usually used together with valid?
77
74
  # @return Array for valid properties with the reasons
78
75
  def list_invalid_properties
76
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
79
77
  []
80
78
  end
81
79
 
82
80
  # Check to see if the all the properties in the model are valid
83
81
  # @return true if the model is valid
84
82
  def valid?
83
+ warn '[DEPRECATED] the `valid?` method is obsolete'
85
84
  true
86
85
  end
87
86
 
@@ -111,40 +110,33 @@ module MoneyKit
111
110
  # @param [Hash] attributes Model attributes in the form of hash
112
111
  # @return [Object] Returns the model itself
113
112
  def self.build_from_hash(attributes)
114
- new.build_from_hash(attributes)
115
- end
116
-
117
- # Builds the object from hash
118
- # @param [Hash] attributes Model attributes in the form of hash
119
- # @return [Object] Returns the model itself
120
- def build_from_hash(attributes)
121
113
  return nil unless attributes.is_a?(Hash)
122
114
 
123
115
  attributes = attributes.transform_keys(&:to_sym)
124
- self.class.openapi_types.each_pair do |key, type|
125
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
126
- send("#{key}=", nil)
116
+ transformed_hash = {}
117
+ openapi_types.each_pair do |key, type|
118
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
119
+ transformed_hash["#{key}"] = nil
127
120
  elsif type =~ /\AArray<(.*)>/i
128
121
  # check to ensure the input is an array given that the attribute
129
122
  # is documented as an array but the input is not
130
- if attributes[self.class.attribute_map[key]].is_a?(Array)
131
- send("#{key}=", attributes[self.class.attribute_map[key]].map do |v|
132
- _deserialize(::Regexp.last_match(1), v)
133
- end)
123
+ if attributes[attribute_map[key]].is_a?(Array)
124
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map do |v|
125
+ _deserialize(::Regexp.last_match(1), v)
126
+ end
134
127
  end
135
- elsif !attributes[self.class.attribute_map[key]].nil?
136
- send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
128
+ elsif !attributes[attribute_map[key]].nil?
129
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
137
130
  end
138
131
  end
139
-
140
- self
132
+ new(transformed_hash)
141
133
  end
142
134
 
143
135
  # Deserializes the data based on type
144
136
  # @param string type Data type
145
137
  # @param string value Value to be deserialized
146
138
  # @return [Object] Deserialized data
147
- def _deserialize(type, value)
139
+ def self._deserialize(type, value)
148
140
  case type.to_sym
149
141
  when :Time
150
142
  Time.parse(value)
@@ -179,7 +171,7 @@ module MoneyKit
179
171
  else # model
180
172
  # models (e.g. Pet) or oneOf
181
173
  klass = MoneyKit.const_get(type)
182
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
174
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
183
175
  end
184
176
  end
185
177