ynab 2.0.0 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/DEVELOPMENT.md +6 -2
- data/Gemfile.lock +1 -1
- data/README.md +4 -2
- data/docs/BulkTransactions.md +1 -1
- data/docs/CategoriesApi.md +22 -0
- data/docs/ExistingTransaction.md +18 -0
- data/docs/HybridTransaction.md +3 -2
- data/docs/NewTransaction.md +19 -0
- data/docs/PatchCategoryWrapper.md +8 -0
- data/docs/PatchPayeeWrapper.md +8 -0
- data/docs/PatchTransactionsWrapper.md +1 -1
- data/docs/PayeesApi.md +22 -0
- data/docs/PostTransactionsWrapper.md +2 -2
- data/docs/PutTransactionWrapper.md +1 -1
- data/docs/SaveCategory.md +10 -0
- data/docs/SavePayee.md +8 -0
- data/docs/SavePayeeResponse.md +8 -0
- data/docs/SavePayeeResponseData.md +9 -0
- data/docs/SaveTransactionWithIdOrImportId.md +20 -0
- data/docs/SaveTransactionWithOptionalFields.md +2 -3
- data/docs/ScheduledTransactionDetail.md +2 -1
- data/docs/ScheduledTransactionSummary.md +2 -1
- data/docs/TransactionClearedStatus.md +7 -0
- data/docs/TransactionDetail.md +3 -2
- data/docs/TransactionFlagColor.md +7 -0
- data/docs/TransactionSummary.md +3 -2
- data/docs/TransactionsApi.md +7 -7
- data/lib/ynab/api/accounts_api.rb +2 -2
- data/lib/ynab/api/budgets_api.rb +2 -2
- data/lib/ynab/api/categories_api.rb +82 -2
- data/lib/ynab/api/months_api.rb +2 -2
- data/lib/ynab/api/payee_locations_api.rb +2 -2
- data/lib/ynab/api/payees_api.rb +82 -2
- data/lib/ynab/api/scheduled_transactions_api.rb +2 -2
- data/lib/ynab/api/transactions_api.rb +12 -28
- data/lib/ynab/api/user_api.rb +2 -2
- data/lib/ynab/api_client.rb +2 -2
- data/lib/ynab/configuration.rb +14 -11
- data/lib/ynab/models/account.rb +13 -56
- data/lib/ynab/models/account_response.rb +13 -24
- data/lib/ynab/models/account_response_data.rb +13 -24
- data/lib/ynab/models/account_type.rb +2 -2
- data/lib/ynab/models/accounts_response.rb +13 -24
- data/lib/ynab/models/accounts_response_data.rb +13 -28
- data/lib/ynab/models/budget_detail.rb +13 -29
- data/lib/ynab/models/budget_detail_response.rb +13 -24
- data/lib/ynab/models/budget_detail_response_data.rb +13 -28
- data/lib/ynab/models/budget_settings.rb +13 -20
- data/lib/ynab/models/budget_settings_response.rb +13 -24
- data/lib/ynab/models/budget_settings_response_data.rb +13 -24
- data/lib/ynab/models/budget_summary.rb +13 -28
- data/lib/ynab/models/budget_summary_response.rb +13 -24
- data/lib/ynab/models/budget_summary_response_data.rb +13 -24
- data/lib/ynab/models/bulk_response.rb +13 -24
- data/lib/ynab/models/bulk_response_data.rb +13 -24
- data/lib/ynab/models/bulk_response_data_bulk.rb +13 -28
- data/lib/ynab/models/bulk_transactions.rb +14 -25
- data/lib/ynab/models/categories_response.rb +13 -24
- data/lib/ynab/models/categories_response_data.rb +13 -28
- data/lib/ynab/models/category.rb +13 -56
- data/lib/ynab/models/category_group.rb +13 -36
- data/lib/ynab/models/category_group_with_categories.rb +14 -42
- data/lib/ynab/models/category_group_with_categories_all_of.rb +0 -4
- data/lib/ynab/models/category_response.rb +13 -24
- data/lib/ynab/models/category_response_data.rb +13 -24
- data/lib/ynab/models/currency_format.rb +13 -52
- data/lib/ynab/models/date_format.rb +13 -24
- data/lib/ynab/models/error_detail.rb +13 -32
- data/lib/ynab/models/error_response.rb +13 -24
- data/lib/ynab/models/existing_transaction.rb +359 -0
- data/lib/ynab/models/hybrid_transaction.rb +28 -95
- data/lib/ynab/models/hybrid_transaction_all_of.rb +0 -12
- data/lib/ynab/models/hybrid_transactions_response.rb +13 -24
- data/lib/ynab/models/hybrid_transactions_response_data.rb +13 -24
- data/lib/ynab/models/month_detail.rb +13 -49
- data/lib/ynab/models/month_detail_all_of.rb +0 -4
- data/lib/ynab/models/month_detail_response.rb +13 -24
- data/lib/ynab/models/month_detail_response_data.rb +13 -24
- data/lib/ynab/models/month_summaries_response.rb +13 -24
- data/lib/ynab/models/month_summaries_response_data.rb +13 -28
- data/lib/ynab/models/month_summary.rb +13 -44
- data/lib/ynab/models/new_transaction.rb +377 -0
- data/lib/ynab/models/patch_category_wrapper.rb +213 -0
- data/lib/ynab/models/patch_month_category_wrapper.rb +13 -24
- data/lib/ynab/models/patch_payee_wrapper.rb +213 -0
- data/lib/ynab/models/patch_transactions_wrapper.rb +14 -25
- data/lib/ynab/models/payee.rb +13 -32
- data/lib/ynab/models/payee_location.rb +13 -40
- data/lib/ynab/models/payee_location_response.rb +13 -24
- data/lib/ynab/models/payee_location_response_data.rb +13 -24
- data/lib/ynab/models/payee_locations_response.rb +13 -24
- data/lib/ynab/models/payee_locations_response_data.rb +13 -24
- data/lib/ynab/models/payee_response.rb +13 -24
- data/lib/ynab/models/payee_response_data.rb +13 -24
- data/lib/ynab/models/payees_response.rb +13 -24
- data/lib/ynab/models/payees_response_data.rb +13 -28
- data/lib/ynab/models/post_account_wrapper.rb +13 -24
- data/lib/ynab/models/post_transactions_wrapper.rb +15 -22
- data/lib/ynab/models/put_transaction_wrapper.rb +14 -25
- data/lib/ynab/models/save_account.rb +13 -32
- data/lib/ynab/models/save_category.rb +232 -0
- data/lib/ynab/models/save_category_response.rb +13 -24
- data/lib/ynab/models/save_category_response_data.rb +13 -28
- data/lib/ynab/models/save_month_category.rb +13 -24
- data/lib/ynab/models/save_payee.rb +220 -0
- data/lib/ynab/models/save_payee_response.rb +213 -0
- data/lib/ynab/models/save_payee_response_data.rb +224 -0
- data/lib/ynab/models/save_sub_transaction.rb +13 -40
- data/lib/ynab/models/save_transaction.rb +0 -32
- data/lib/ynab/models/save_transaction_with_id.rb +0 -32
- data/lib/ynab/models/save_transaction_with_id_or_import_id.rb +388 -0
- data/lib/ynab/models/save_transaction_with_optional_fields.rb +17 -91
- data/lib/ynab/models/save_transactions_response.rb +13 -24
- data/lib/ynab/models/save_transactions_response_data.rb +13 -28
- data/lib/ynab/models/scheduled_sub_transaction.rb +13 -36
- data/lib/ynab/models/scheduled_transaction_detail.rb +26 -76
- data/lib/ynab/models/scheduled_transaction_detail_all_of.rb +0 -8
- data/lib/ynab/models/scheduled_transaction_response.rb +13 -24
- data/lib/ynab/models/scheduled_transaction_response_data.rb +13 -24
- data/lib/ynab/models/scheduled_transaction_summary.rb +26 -67
- data/lib/ynab/models/scheduled_transactions_response.rb +13 -24
- data/lib/ynab/models/scheduled_transactions_response_data.rb +13 -28
- data/lib/ynab/models/sub_transaction.rb +13 -36
- data/lib/ynab/models/transaction_cleared_status.rb +41 -0
- data/lib/ynab/models/transaction_detail.rb +28 -91
- data/lib/ynab/models/transaction_detail_all_of.rb +0 -8
- data/lib/ynab/models/transaction_flag_color.rb +45 -0
- data/lib/ynab/models/transaction_response.rb +13 -24
- data/lib/ynab/models/transaction_response_data.rb +13 -24
- data/lib/ynab/models/transaction_summary.rb +28 -82
- data/lib/ynab/models/transactions_import_response.rb +13 -24
- data/lib/ynab/models/transactions_import_response_data.rb +13 -24
- data/lib/ynab/models/transactions_response.rb +13 -24
- data/lib/ynab/models/transactions_response_data.rb +13 -28
- data/lib/ynab/models/user.rb +13 -24
- data/lib/ynab/models/user_response.rb +13 -24
- data/lib/ynab/models/user_response_data.rb +13 -24
- data/lib/ynab/version.rb +1 -1
- data/lib/ynab.rb +13 -12
- data/open_api_spec.yaml +455 -343
- data/templates/api.mustache +213 -0
- data/templates/partial_model_generic.mustache +305 -0
- data/ynab.gemspec +4 -3
- metadata +31 -7
@@ -3,10 +3,10 @@
|
|
3
3
|
|
4
4
|
#Our API uses a REST based design, leverages the JSON data format, and relies upon HTTPS for transport. We respond with meaningful HTTP response codes and if an error occurs, we include error details in the response body. API Documentation is at https://api.ynab.com
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.
|
6
|
+
The version of the OpenAPI document: 1.69.0
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
|
-
|
9
|
+
Generator version: 7.6.0
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
@@ -66,10 +66,6 @@ module YNAB
|
|
66
66
|
# @return Array for valid properties with the reasons
|
67
67
|
def list_invalid_properties
|
68
68
|
invalid_properties = Array.new
|
69
|
-
if @data.nil?
|
70
|
-
invalid_properties.push('invalid value for "data", data cannot be nil.')
|
71
|
-
end
|
72
|
-
|
73
69
|
invalid_properties
|
74
70
|
end
|
75
71
|
|
@@ -104,37 +100,30 @@ module YNAB
|
|
104
100
|
# @param [Hash] attributes Model attributes in the form of hash
|
105
101
|
# @return [Object] Returns the model itself
|
106
102
|
def self.build_from_hash(attributes)
|
107
|
-
new.build_from_hash(attributes)
|
108
|
-
end
|
109
|
-
|
110
|
-
# Builds the object from hash
|
111
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
112
|
-
# @return [Object] Returns the model itself
|
113
|
-
def build_from_hash(attributes)
|
114
103
|
return nil unless attributes.is_a?(Hash)
|
115
104
|
attributes = attributes.transform_keys(&:to_sym)
|
116
|
-
|
117
|
-
|
118
|
-
|
105
|
+
transformed_hash = {}
|
106
|
+
openapi_types.each_pair do |key, type|
|
107
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
108
|
+
transformed_hash["#{key}"] = nil
|
119
109
|
elsif type =~ /\AArray<(.*)>/i
|
120
110
|
# check to ensure the input is an array given that the attribute
|
121
111
|
# is documented as an array but the input is not
|
122
|
-
if attributes[
|
123
|
-
|
112
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
113
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
124
114
|
end
|
125
|
-
elsif !attributes[
|
126
|
-
|
115
|
+
elsif !attributes[attribute_map[key]].nil?
|
116
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
127
117
|
end
|
128
118
|
end
|
129
|
-
|
130
|
-
self
|
119
|
+
new(transformed_hash)
|
131
120
|
end
|
132
121
|
|
133
122
|
# Deserializes the data based on type
|
134
123
|
# @param string type Data type
|
135
124
|
# @param string value Value to be deserialized
|
136
125
|
# @return [Object] Deserialized data
|
137
|
-
def _deserialize(type, value)
|
126
|
+
def self._deserialize(type, value)
|
138
127
|
case type.to_sym
|
139
128
|
when :Time
|
140
129
|
Time.parse(value)
|
@@ -169,7 +158,7 @@ module YNAB
|
|
169
158
|
else # model
|
170
159
|
# models (e.g. Pet) or oneOf
|
171
160
|
klass = YNAB.const_get(type)
|
172
|
-
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
161
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
173
162
|
end
|
174
163
|
end
|
175
164
|
|
@@ -3,10 +3,10 @@
|
|
3
3
|
|
4
4
|
#Our API uses a REST based design, leverages the JSON data format, and relies upon HTTPS for transport. We respond with meaningful HTTP response codes and if an error occurs, we include error details in the response body. API Documentation is at https://api.ynab.com
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.
|
6
|
+
The version of the OpenAPI document: 1.69.0
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
|
-
|
9
|
+
Generator version: 7.6.0
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
@@ -77,10 +77,6 @@ module YNAB
|
|
77
77
|
# @return Array for valid properties with the reasons
|
78
78
|
def list_invalid_properties
|
79
79
|
invalid_properties = Array.new
|
80
|
-
if @transactions.nil?
|
81
|
-
invalid_properties.push('invalid value for "transactions", transactions cannot be nil.')
|
82
|
-
end
|
83
|
-
|
84
80
|
invalid_properties
|
85
81
|
end
|
86
82
|
|
@@ -116,37 +112,30 @@ module YNAB
|
|
116
112
|
# @param [Hash] attributes Model attributes in the form of hash
|
117
113
|
# @return [Object] Returns the model itself
|
118
114
|
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
115
|
return nil unless attributes.is_a?(Hash)
|
127
116
|
attributes = attributes.transform_keys(&:to_sym)
|
128
|
-
|
129
|
-
|
130
|
-
|
117
|
+
transformed_hash = {}
|
118
|
+
openapi_types.each_pair do |key, type|
|
119
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
120
|
+
transformed_hash["#{key}"] = nil
|
131
121
|
elsif type =~ /\AArray<(.*)>/i
|
132
122
|
# check to ensure the input is an array given that the attribute
|
133
123
|
# is documented as an array but the input is not
|
134
|
-
if attributes[
|
135
|
-
|
124
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
125
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
136
126
|
end
|
137
|
-
elsif !attributes[
|
138
|
-
|
127
|
+
elsif !attributes[attribute_map[key]].nil?
|
128
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
139
129
|
end
|
140
130
|
end
|
141
|
-
|
142
|
-
self
|
131
|
+
new(transformed_hash)
|
143
132
|
end
|
144
133
|
|
145
134
|
# Deserializes the data based on type
|
146
135
|
# @param string type Data type
|
147
136
|
# @param string value Value to be deserialized
|
148
137
|
# @return [Object] Deserialized data
|
149
|
-
def _deserialize(type, value)
|
138
|
+
def self._deserialize(type, value)
|
150
139
|
case type.to_sym
|
151
140
|
when :Time
|
152
141
|
Time.parse(value)
|
@@ -181,7 +170,7 @@ module YNAB
|
|
181
170
|
else # model
|
182
171
|
# models (e.g. Pet) or oneOf
|
183
172
|
klass = YNAB.const_get(type)
|
184
|
-
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
173
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
185
174
|
end
|
186
175
|
end
|
187
176
|
|
@@ -3,10 +3,10 @@
|
|
3
3
|
|
4
4
|
#Our API uses a REST based design, leverages the JSON data format, and relies upon HTTPS for transport. We respond with meaningful HTTP response codes and if an error occurs, we include error details in the response body. API Documentation is at https://api.ynab.com
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.
|
6
|
+
The version of the OpenAPI document: 1.69.0
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
|
-
|
9
|
+
Generator version: 7.6.0
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
@@ -86,7 +86,6 @@ module YNAB
|
|
86
86
|
# List of class defined in allOf (OpenAPI v3)
|
87
87
|
def self.openapi_all_of
|
88
88
|
[
|
89
|
-
:'MonthDetailAllOf',
|
90
89
|
:'MonthSummary'
|
91
90
|
]
|
92
91
|
end
|
@@ -149,34 +148,6 @@ module YNAB
|
|
149
148
|
# @return Array for valid properties with the reasons
|
150
149
|
def list_invalid_properties
|
151
150
|
invalid_properties = Array.new
|
152
|
-
if @month.nil?
|
153
|
-
invalid_properties.push('invalid value for "month", month cannot be nil.')
|
154
|
-
end
|
155
|
-
|
156
|
-
if @income.nil?
|
157
|
-
invalid_properties.push('invalid value for "income", income cannot be nil.')
|
158
|
-
end
|
159
|
-
|
160
|
-
if @budgeted.nil?
|
161
|
-
invalid_properties.push('invalid value for "budgeted", budgeted cannot be nil.')
|
162
|
-
end
|
163
|
-
|
164
|
-
if @activity.nil?
|
165
|
-
invalid_properties.push('invalid value for "activity", activity cannot be nil.')
|
166
|
-
end
|
167
|
-
|
168
|
-
if @to_be_budgeted.nil?
|
169
|
-
invalid_properties.push('invalid value for "to_be_budgeted", to_be_budgeted cannot be nil.')
|
170
|
-
end
|
171
|
-
|
172
|
-
if @deleted.nil?
|
173
|
-
invalid_properties.push('invalid value for "deleted", deleted cannot be nil.')
|
174
|
-
end
|
175
|
-
|
176
|
-
if @categories.nil?
|
177
|
-
invalid_properties.push('invalid value for "categories", categories cannot be nil.')
|
178
|
-
end
|
179
|
-
|
180
151
|
invalid_properties
|
181
152
|
end
|
182
153
|
|
@@ -225,37 +196,30 @@ module YNAB
|
|
225
196
|
# @param [Hash] attributes Model attributes in the form of hash
|
226
197
|
# @return [Object] Returns the model itself
|
227
198
|
def self.build_from_hash(attributes)
|
228
|
-
new.build_from_hash(attributes)
|
229
|
-
end
|
230
|
-
|
231
|
-
# Builds the object from hash
|
232
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
233
|
-
# @return [Object] Returns the model itself
|
234
|
-
def build_from_hash(attributes)
|
235
199
|
return nil unless attributes.is_a?(Hash)
|
236
200
|
attributes = attributes.transform_keys(&:to_sym)
|
237
|
-
|
238
|
-
|
239
|
-
|
201
|
+
transformed_hash = {}
|
202
|
+
openapi_types.each_pair do |key, type|
|
203
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
204
|
+
transformed_hash["#{key}"] = nil
|
240
205
|
elsif type =~ /\AArray<(.*)>/i
|
241
206
|
# check to ensure the input is an array given that the attribute
|
242
207
|
# is documented as an array but the input is not
|
243
|
-
if attributes[
|
244
|
-
|
208
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
209
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
245
210
|
end
|
246
|
-
elsif !attributes[
|
247
|
-
|
211
|
+
elsif !attributes[attribute_map[key]].nil?
|
212
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
248
213
|
end
|
249
214
|
end
|
250
|
-
|
251
|
-
self
|
215
|
+
new(transformed_hash)
|
252
216
|
end
|
253
217
|
|
254
218
|
# Deserializes the data based on type
|
255
219
|
# @param string type Data type
|
256
220
|
# @param string value Value to be deserialized
|
257
221
|
# @return [Object] Deserialized data
|
258
|
-
def _deserialize(type, value)
|
222
|
+
def self._deserialize(type, value)
|
259
223
|
case type.to_sym
|
260
224
|
when :Time
|
261
225
|
Time.parse(value)
|
@@ -290,7 +254,7 @@ module YNAB
|
|
290
254
|
else # model
|
291
255
|
# models (e.g. Pet) or oneOf
|
292
256
|
klass = YNAB.const_get(type)
|
293
|
-
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
257
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
294
258
|
end
|
295
259
|
end
|
296
260
|
|
@@ -69,10 +69,6 @@ module YNAB
|
|
69
69
|
# @return Array for valid properties with the reasons
|
70
70
|
def list_invalid_properties
|
71
71
|
invalid_properties = Array.new
|
72
|
-
if @categories.nil?
|
73
|
-
invalid_properties.push('invalid value for "categories", categories cannot be nil.')
|
74
|
-
end
|
75
|
-
|
76
72
|
invalid_properties
|
77
73
|
end
|
78
74
|
|
@@ -3,10 +3,10 @@
|
|
3
3
|
|
4
4
|
#Our API uses a REST based design, leverages the JSON data format, and relies upon HTTPS for transport. We respond with meaningful HTTP response codes and if an error occurs, we include error details in the response body. API Documentation is at https://api.ynab.com
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.
|
6
|
+
The version of the OpenAPI document: 1.69.0
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
|
-
|
9
|
+
Generator version: 7.6.0
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
@@ -66,10 +66,6 @@ module YNAB
|
|
66
66
|
# @return Array for valid properties with the reasons
|
67
67
|
def list_invalid_properties
|
68
68
|
invalid_properties = Array.new
|
69
|
-
if @data.nil?
|
70
|
-
invalid_properties.push('invalid value for "data", data cannot be nil.')
|
71
|
-
end
|
72
|
-
|
73
69
|
invalid_properties
|
74
70
|
end
|
75
71
|
|
@@ -104,37 +100,30 @@ module YNAB
|
|
104
100
|
# @param [Hash] attributes Model attributes in the form of hash
|
105
101
|
# @return [Object] Returns the model itself
|
106
102
|
def self.build_from_hash(attributes)
|
107
|
-
new.build_from_hash(attributes)
|
108
|
-
end
|
109
|
-
|
110
|
-
# Builds the object from hash
|
111
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
112
|
-
# @return [Object] Returns the model itself
|
113
|
-
def build_from_hash(attributes)
|
114
103
|
return nil unless attributes.is_a?(Hash)
|
115
104
|
attributes = attributes.transform_keys(&:to_sym)
|
116
|
-
|
117
|
-
|
118
|
-
|
105
|
+
transformed_hash = {}
|
106
|
+
openapi_types.each_pair do |key, type|
|
107
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
108
|
+
transformed_hash["#{key}"] = nil
|
119
109
|
elsif type =~ /\AArray<(.*)>/i
|
120
110
|
# check to ensure the input is an array given that the attribute
|
121
111
|
# is documented as an array but the input is not
|
122
|
-
if attributes[
|
123
|
-
|
112
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
113
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
124
114
|
end
|
125
|
-
elsif !attributes[
|
126
|
-
|
115
|
+
elsif !attributes[attribute_map[key]].nil?
|
116
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
127
117
|
end
|
128
118
|
end
|
129
|
-
|
130
|
-
self
|
119
|
+
new(transformed_hash)
|
131
120
|
end
|
132
121
|
|
133
122
|
# Deserializes the data based on type
|
134
123
|
# @param string type Data type
|
135
124
|
# @param string value Value to be deserialized
|
136
125
|
# @return [Object] Deserialized data
|
137
|
-
def _deserialize(type, value)
|
126
|
+
def self._deserialize(type, value)
|
138
127
|
case type.to_sym
|
139
128
|
when :Time
|
140
129
|
Time.parse(value)
|
@@ -169,7 +158,7 @@ module YNAB
|
|
169
158
|
else # model
|
170
159
|
# models (e.g. Pet) or oneOf
|
171
160
|
klass = YNAB.const_get(type)
|
172
|
-
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
161
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
173
162
|
end
|
174
163
|
end
|
175
164
|
|
@@ -3,10 +3,10 @@
|
|
3
3
|
|
4
4
|
#Our API uses a REST based design, leverages the JSON data format, and relies upon HTTPS for transport. We respond with meaningful HTTP response codes and if an error occurs, we include error details in the response body. API Documentation is at https://api.ynab.com
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.
|
6
|
+
The version of the OpenAPI document: 1.69.0
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
|
-
|
9
|
+
Generator version: 7.6.0
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
@@ -66,10 +66,6 @@ module YNAB
|
|
66
66
|
# @return Array for valid properties with the reasons
|
67
67
|
def list_invalid_properties
|
68
68
|
invalid_properties = Array.new
|
69
|
-
if @month.nil?
|
70
|
-
invalid_properties.push('invalid value for "month", month cannot be nil.')
|
71
|
-
end
|
72
|
-
|
73
69
|
invalid_properties
|
74
70
|
end
|
75
71
|
|
@@ -104,37 +100,30 @@ module YNAB
|
|
104
100
|
# @param [Hash] attributes Model attributes in the form of hash
|
105
101
|
# @return [Object] Returns the model itself
|
106
102
|
def self.build_from_hash(attributes)
|
107
|
-
new.build_from_hash(attributes)
|
108
|
-
end
|
109
|
-
|
110
|
-
# Builds the object from hash
|
111
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
112
|
-
# @return [Object] Returns the model itself
|
113
|
-
def build_from_hash(attributes)
|
114
103
|
return nil unless attributes.is_a?(Hash)
|
115
104
|
attributes = attributes.transform_keys(&:to_sym)
|
116
|
-
|
117
|
-
|
118
|
-
|
105
|
+
transformed_hash = {}
|
106
|
+
openapi_types.each_pair do |key, type|
|
107
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
108
|
+
transformed_hash["#{key}"] = nil
|
119
109
|
elsif type =~ /\AArray<(.*)>/i
|
120
110
|
# check to ensure the input is an array given that the attribute
|
121
111
|
# is documented as an array but the input is not
|
122
|
-
if attributes[
|
123
|
-
|
112
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
113
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
124
114
|
end
|
125
|
-
elsif !attributes[
|
126
|
-
|
115
|
+
elsif !attributes[attribute_map[key]].nil?
|
116
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
127
117
|
end
|
128
118
|
end
|
129
|
-
|
130
|
-
self
|
119
|
+
new(transformed_hash)
|
131
120
|
end
|
132
121
|
|
133
122
|
# Deserializes the data based on type
|
134
123
|
# @param string type Data type
|
135
124
|
# @param string value Value to be deserialized
|
136
125
|
# @return [Object] Deserialized data
|
137
|
-
def _deserialize(type, value)
|
126
|
+
def self._deserialize(type, value)
|
138
127
|
case type.to_sym
|
139
128
|
when :Time
|
140
129
|
Time.parse(value)
|
@@ -169,7 +158,7 @@ module YNAB
|
|
169
158
|
else # model
|
170
159
|
# models (e.g. Pet) or oneOf
|
171
160
|
klass = YNAB.const_get(type)
|
172
|
-
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
161
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
173
162
|
end
|
174
163
|
end
|
175
164
|
|
@@ -3,10 +3,10 @@
|
|
3
3
|
|
4
4
|
#Our API uses a REST based design, leverages the JSON data format, and relies upon HTTPS for transport. We respond with meaningful HTTP response codes and if an error occurs, we include error details in the response body. API Documentation is at https://api.ynab.com
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.
|
6
|
+
The version of the OpenAPI document: 1.69.0
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
|
-
|
9
|
+
Generator version: 7.6.0
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
@@ -66,10 +66,6 @@ module YNAB
|
|
66
66
|
# @return Array for valid properties with the reasons
|
67
67
|
def list_invalid_properties
|
68
68
|
invalid_properties = Array.new
|
69
|
-
if @data.nil?
|
70
|
-
invalid_properties.push('invalid value for "data", data cannot be nil.')
|
71
|
-
end
|
72
|
-
|
73
69
|
invalid_properties
|
74
70
|
end
|
75
71
|
|
@@ -104,37 +100,30 @@ module YNAB
|
|
104
100
|
# @param [Hash] attributes Model attributes in the form of hash
|
105
101
|
# @return [Object] Returns the model itself
|
106
102
|
def self.build_from_hash(attributes)
|
107
|
-
new.build_from_hash(attributes)
|
108
|
-
end
|
109
|
-
|
110
|
-
# Builds the object from hash
|
111
|
-
# @param [Hash] attributes Model attributes in the form of hash
|
112
|
-
# @return [Object] Returns the model itself
|
113
|
-
def build_from_hash(attributes)
|
114
103
|
return nil unless attributes.is_a?(Hash)
|
115
104
|
attributes = attributes.transform_keys(&:to_sym)
|
116
|
-
|
117
|
-
|
118
|
-
|
105
|
+
transformed_hash = {}
|
106
|
+
openapi_types.each_pair do |key, type|
|
107
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
108
|
+
transformed_hash["#{key}"] = nil
|
119
109
|
elsif type =~ /\AArray<(.*)>/i
|
120
110
|
# check to ensure the input is an array given that the attribute
|
121
111
|
# is documented as an array but the input is not
|
122
|
-
if attributes[
|
123
|
-
|
112
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
113
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
124
114
|
end
|
125
|
-
elsif !attributes[
|
126
|
-
|
115
|
+
elsif !attributes[attribute_map[key]].nil?
|
116
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
127
117
|
end
|
128
118
|
end
|
129
|
-
|
130
|
-
self
|
119
|
+
new(transformed_hash)
|
131
120
|
end
|
132
121
|
|
133
122
|
# Deserializes the data based on type
|
134
123
|
# @param string type Data type
|
135
124
|
# @param string value Value to be deserialized
|
136
125
|
# @return [Object] Deserialized data
|
137
|
-
def _deserialize(type, value)
|
126
|
+
def self._deserialize(type, value)
|
138
127
|
case type.to_sym
|
139
128
|
when :Time
|
140
129
|
Time.parse(value)
|
@@ -169,7 +158,7 @@ module YNAB
|
|
169
158
|
else # model
|
170
159
|
# models (e.g. Pet) or oneOf
|
171
160
|
klass = YNAB.const_get(type)
|
172
|
-
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
161
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
173
162
|
end
|
174
163
|
end
|
175
164
|
|
@@ -3,10 +3,10 @@
|
|
3
3
|
|
4
4
|
#Our API uses a REST based design, leverages the JSON data format, and relies upon HTTPS for transport. We respond with meaningful HTTP response codes and if an error occurs, we include error details in the response body. API Documentation is at https://api.ynab.com
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 1.
|
6
|
+
The version of the OpenAPI document: 1.69.0
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
|
-
|
9
|
+
Generator version: 7.6.0
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
@@ -77,14 +77,6 @@ module YNAB
|
|
77
77
|
# @return Array for valid properties with the reasons
|
78
78
|
def list_invalid_properties
|
79
79
|
invalid_properties = Array.new
|
80
|
-
if @months.nil?
|
81
|
-
invalid_properties.push('invalid value for "months", months cannot be nil.')
|
82
|
-
end
|
83
|
-
|
84
|
-
if @server_knowledge.nil?
|
85
|
-
invalid_properties.push('invalid value for "server_knowledge", server_knowledge cannot be nil.')
|
86
|
-
end
|
87
|
-
|
88
80
|
invalid_properties
|
89
81
|
end
|
90
82
|
|
@@ -121,37 +113,30 @@ module YNAB
|
|
121
113
|
# @param [Hash] attributes Model attributes in the form of hash
|
122
114
|
# @return [Object] Returns the model itself
|
123
115
|
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
116
|
return nil unless attributes.is_a?(Hash)
|
132
117
|
attributes = attributes.transform_keys(&:to_sym)
|
133
|
-
|
134
|
-
|
135
|
-
|
118
|
+
transformed_hash = {}
|
119
|
+
openapi_types.each_pair do |key, type|
|
120
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
121
|
+
transformed_hash["#{key}"] = nil
|
136
122
|
elsif type =~ /\AArray<(.*)>/i
|
137
123
|
# check to ensure the input is an array given that the attribute
|
138
124
|
# is documented as an array but the input is not
|
139
|
-
if attributes[
|
140
|
-
|
125
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
126
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
141
127
|
end
|
142
|
-
elsif !attributes[
|
143
|
-
|
128
|
+
elsif !attributes[attribute_map[key]].nil?
|
129
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
144
130
|
end
|
145
131
|
end
|
146
|
-
|
147
|
-
self
|
132
|
+
new(transformed_hash)
|
148
133
|
end
|
149
134
|
|
150
135
|
# Deserializes the data based on type
|
151
136
|
# @param string type Data type
|
152
137
|
# @param string value Value to be deserialized
|
153
138
|
# @return [Object] Deserialized data
|
154
|
-
def _deserialize(type, value)
|
139
|
+
def self._deserialize(type, value)
|
155
140
|
case type.to_sym
|
156
141
|
when :Time
|
157
142
|
Time.parse(value)
|
@@ -186,7 +171,7 @@ module YNAB
|
|
186
171
|
else # model
|
187
172
|
# models (e.g. Pet) or oneOf
|
188
173
|
klass = YNAB.const_get(type)
|
189
|
-
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)
|
190
175
|
end
|
191
176
|
end
|
192
177
|
|