nucleus_api 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (805) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/README.md +787 -0
  4. data/Rakefile +8 -0
  5. data/docs/Account.md +22 -0
  6. data/docs/AccountAllocationMapping.md +17 -0
  7. data/docs/AccountApi.md +1919 -0
  8. data/docs/AccountMap.md +9 -0
  9. data/docs/AccountPermissionVO.md +9 -0
  10. data/docs/AccountPortfolioRebalanceRequest.md +21 -0
  11. data/docs/AccountStatus.md +16 -0
  12. data/docs/AccountType.md +23 -0
  13. data/docs/AclClientPermissionVO.md +10 -0
  14. data/docs/AdminClient.md +18 -0
  15. data/docs/AdminClientApi.md +309 -0
  16. data/docs/AggregationAccount.md +30 -0
  17. data/docs/AggregationAccountApi.md +1702 -0
  18. data/docs/AggregationAccountBalance.md +18 -0
  19. data/docs/AggregationAccountHolding.md +26 -0
  20. data/docs/AggregationAccountTransaction.md +23 -0
  21. data/docs/AggregationAccountsMap.md +9 -0
  22. data/docs/Allocation.md +22 -0
  23. data/docs/AllocationAggregatedVO.md +13 -0
  24. data/docs/AllocationApi.md +872 -0
  25. data/docs/AllocationComposition.md +18 -0
  26. data/docs/AllocationCompositionAggregatedVO.md +19 -0
  27. data/docs/AllocationCompositionModelHoldingsVO.md +22 -0
  28. data/docs/AllocationNodeMap.md +8 -0
  29. data/docs/Answer.md +18 -0
  30. data/docs/AnswerMap.md +8 -0
  31. data/docs/Application.md +15 -0
  32. data/docs/ApplicationApi.md +309 -0
  33. data/docs/AuditLog.md +23 -0
  34. data/docs/AuditLogApi.md +191 -0
  35. data/docs/AvailableDateDoubleVO.md +14 -0
  36. data/docs/BankCredit.md +15 -0
  37. data/docs/BankLink.md +29 -0
  38. data/docs/BankLinkMap.md +9 -0
  39. data/docs/Benchmark.md +17 -0
  40. data/docs/BenchmarkApi.md +375 -0
  41. data/docs/BenchmarkComposition.md +9 -0
  42. data/docs/Brokers.md +9 -0
  43. data/docs/Budget.md +25 -0
  44. data/docs/BudgetAggregationAccount.md +8 -0
  45. data/docs/BudgetApi.md +315 -0
  46. data/docs/BudgetObject.md +10 -0
  47. data/docs/BulkApi.md +249 -0
  48. data/docs/BulkTransaction.md +13 -0
  49. data/docs/BulkTransactionVO.md +12 -0
  50. data/docs/Business.md +32 -0
  51. data/docs/BusinessAddress.md +15 -0
  52. data/docs/BusinessApi.md +523 -0
  53. data/docs/Card.md +35 -0
  54. data/docs/CardAddress.md +14 -0
  55. data/docs/CardApi.md +754 -0
  56. data/docs/CardProgram.md +23 -0
  57. data/docs/Cash.md +10 -0
  58. data/docs/CategoriesMap.md +9 -0
  59. data/docs/CategoryInternalResponseVO.md +10 -0
  60. data/docs/CategoryResponseVO.md +9 -0
  61. data/docs/Check.md +10 -0
  62. data/docs/CheckImages.md +9 -0
  63. data/docs/Client.md +39 -0
  64. data/docs/ClientAccountMapping.md +10 -0
  65. data/docs/ClientAddress.md +15 -0
  66. data/docs/ClientApi.md +1008 -0
  67. data/docs/ClientRelationship.md +10 -0
  68. data/docs/ClientResponse.md +17 -0
  69. data/docs/ClientStatus.md +16 -0
  70. data/docs/ClientViewGoalData.md +21 -0
  71. data/docs/Country.md +12 -0
  72. data/docs/Currency.md +11 -0
  73. data/docs/Customer.md +21 -0
  74. data/docs/CustomerAddress.md +14 -0
  75. data/docs/CustomerApi.md +616 -0
  76. data/docs/CustomerRevenue.md +16 -0
  77. data/docs/DailyDeposit.md +28 -0
  78. data/docs/DailyWithdrawal.md +29 -0
  79. data/docs/DateDoubleVO.md +10 -0
  80. data/docs/DecisionTree.md +17 -0
  81. data/docs/DecisionTreeApi.md +971 -0
  82. data/docs/DecisionTreeCO.md +9 -0
  83. data/docs/DecisionTreeResultVO.md +9 -0
  84. data/docs/Document.md +30 -0
  85. data/docs/DocumentApi.md +309 -0
  86. data/docs/Employment.md +11 -0
  87. data/docs/ExternalAccountTransfer.md +28 -0
  88. data/docs/Feature.md +18 -0
  89. data/docs/FeatureApi.md +610 -0
  90. data/docs/FeatureTrack.md +14 -0
  91. data/docs/FinancialStatement.md +23 -0
  92. data/docs/FinancialStatementApi.md +315 -0
  93. data/docs/Funding.md +37 -0
  94. data/docs/FundingApi.md +1601 -0
  95. data/docs/FundingRequestMap.md +8 -0
  96. data/docs/FxRateView.md +11 -0
  97. data/docs/Goal.md +24 -0
  98. data/docs/GoalAccountMapping.md +11 -0
  99. data/docs/GoalApi.md +841 -0
  100. data/docs/GoalTrack.md +26 -0
  101. data/docs/GoalTrackAccounts.md +8 -0
  102. data/docs/Household.md +18 -0
  103. data/docs/HouseholdApi.md +523 -0
  104. data/docs/Investment.md +16 -0
  105. data/docs/Invoice.md +32 -0
  106. data/docs/InvoiceApi.md +622 -0
  107. data/docs/InvoicePayment.md +15 -0
  108. data/docs/JsonNode.md +29 -0
  109. data/docs/LineItems.md +15 -0
  110. data/docs/Location.md +15 -0
  111. data/docs/MXMerchantRes.md +14 -0
  112. data/docs/Member.md +11 -0
  113. data/docs/MerchantCategoryCode.md +11 -0
  114. data/docs/MerchantsMap.md +9 -0
  115. data/docs/Model.md +29 -0
  116. data/docs/ModelApi.md +1580 -0
  117. data/docs/ModelAssetSize.md +16 -0
  118. data/docs/ModelComment.md +15 -0
  119. data/docs/ModelHolding.md +25 -0
  120. data/docs/ModelHoldingVO.md +11 -0
  121. data/docs/ModelTransaction.md +17 -0
  122. data/docs/Node.md +15 -0
  123. data/docs/NodeRelationship.md +18 -0
  124. data/docs/Notification.md +20 -0
  125. data/docs/NotificationApi.md +911 -0
  126. data/docs/NotificationClient.md +19 -0
  127. data/docs/NotificationSetting.md +19 -0
  128. data/docs/Order.md +27 -0
  129. data/docs/OrderApi.md +1764 -0
  130. data/docs/OrderBulk.md +18 -0
  131. data/docs/OrderReconcileRequest.md +12 -0
  132. data/docs/OrderReconcileReturnObject.md +12 -0
  133. data/docs/OrderStatus.md +14 -0
  134. data/docs/OrderTrack.md +20 -0
  135. data/docs/OrderVoClone.md +20 -0
  136. data/docs/Overflow.md +16 -0
  137. data/docs/OverflowApi.md +492 -0
  138. data/docs/OverflowBankLinkMap.md +9 -0
  139. data/docs/OverflowSettings.md +17 -0
  140. data/docs/OverflowVO.md +10 -0
  141. data/docs/Ownership.md +12 -0
  142. data/docs/PageAccount.md +16 -0
  143. data/docs/PageAccountAllocationMapping.md +16 -0
  144. data/docs/PageAccountPermissionVO.md +16 -0
  145. data/docs/PageAccountStatus.md +16 -0
  146. data/docs/PageAccountType.md +16 -0
  147. data/docs/PageAdminClient.md +16 -0
  148. data/docs/PageAggregationAccount.md +16 -0
  149. data/docs/PageAggregationAccountBalance.md +16 -0
  150. data/docs/PageAggregationAccountHolding.md +16 -0
  151. data/docs/PageAggregationAccountTransaction.md +16 -0
  152. data/docs/PageAllocation.md +16 -0
  153. data/docs/PageAllocationComposition.md +16 -0
  154. data/docs/PageAnswer.md +16 -0
  155. data/docs/PageApplication.md +16 -0
  156. data/docs/PageAuditLog.md +16 -0
  157. data/docs/PageBankLink.md +16 -0
  158. data/docs/PageBenchmark.md +16 -0
  159. data/docs/PageBudget.md +16 -0
  160. data/docs/PageBusiness.md +16 -0
  161. data/docs/PageCard.md +16 -0
  162. data/docs/PageCardProgram.md +16 -0
  163. data/docs/PageClient.md +16 -0
  164. data/docs/PageClientResponse.md +16 -0
  165. data/docs/PageClientStatus.md +16 -0
  166. data/docs/PageCustomer.md +16 -0
  167. data/docs/PageCustomerRevenue.md +16 -0
  168. data/docs/PageDailyDeposit.md +16 -0
  169. data/docs/PageDailyWithdrawal.md +16 -0
  170. data/docs/PageDecisionTree.md +16 -0
  171. data/docs/PageDocument.md +16 -0
  172. data/docs/PageExternalAccountTransfer.md +16 -0
  173. data/docs/PageFeature.md +16 -0
  174. data/docs/PageFeatureTrack.md +16 -0
  175. data/docs/PageFinancialStatement.md +16 -0
  176. data/docs/PageFunding.md +16 -0
  177. data/docs/PageGoal.md +16 -0
  178. data/docs/PageGoalTrack.md +16 -0
  179. data/docs/PageHousehold.md +16 -0
  180. data/docs/PageInvoice.md +16 -0
  181. data/docs/PageInvoicePayment.md +16 -0
  182. data/docs/PageMXMerchantRes.md +16 -0
  183. data/docs/PageModel.md +16 -0
  184. data/docs/PageModelAssetSize.md +16 -0
  185. data/docs/PageModelComment.md +16 -0
  186. data/docs/PageModelHolding.md +16 -0
  187. data/docs/PageModelTransaction.md +16 -0
  188. data/docs/PageNode.md +16 -0
  189. data/docs/PageNodeRelationship.md +16 -0
  190. data/docs/PageNotification.md +16 -0
  191. data/docs/PageNotificationClient.md +16 -0
  192. data/docs/PageNotificationSetting.md +16 -0
  193. data/docs/PageOrder.md +16 -0
  194. data/docs/PageOrderBulk.md +16 -0
  195. data/docs/PageOrderStatus.md +16 -0
  196. data/docs/PageOrderTrack.md +16 -0
  197. data/docs/PageOverflow.md +16 -0
  198. data/docs/PageOverflowSettings.md +16 -0
  199. data/docs/PagePortfolio.md +16 -0
  200. data/docs/PagePortfolioAssetSizeLog.md +16 -0
  201. data/docs/PagePortfolioComment.md +16 -0
  202. data/docs/PagePortfolioGoal.md +16 -0
  203. data/docs/PagePortfolioHoldingLog.md +16 -0
  204. data/docs/PagePortfolioTransaction.md +16 -0
  205. data/docs/PageQuestion.md +16 -0
  206. data/docs/PageQuestionnaire.md +16 -0
  207. data/docs/PageReasonCode.md +16 -0
  208. data/docs/PageRiskProfile.md +16 -0
  209. data/docs/PageRoundup.md +16 -0
  210. data/docs/PageRoundupSettings.md +16 -0
  211. data/docs/PageScore.md +16 -0
  212. data/docs/PageSecurity.md +16 -0
  213. data/docs/PageSecurityExclusion.md +16 -0
  214. data/docs/PageSecurityPrice.md +16 -0
  215. data/docs/PageSpendingControl.md +16 -0
  216. data/docs/PageStage.md +16 -0
  217. data/docs/PageTransactionCode.md +16 -0
  218. data/docs/PageVAccountAssetSize.md +16 -0
  219. data/docs/PageWebhook.md +16 -0
  220. data/docs/PerformanceApi.md +973 -0
  221. data/docs/PermissionVO.md +9 -0
  222. data/docs/Portfolio.md +22 -0
  223. data/docs/PortfolioApi.md +1902 -0
  224. data/docs/PortfolioAssetSizeLog.md +20 -0
  225. data/docs/PortfolioComment.md +16 -0
  226. data/docs/PortfolioGoal.md +14 -0
  227. data/docs/PortfolioGoalMap.md +9 -0
  228. data/docs/PortfolioHoldingAgg.md +14 -0
  229. data/docs/PortfolioHoldingLog.md +21 -0
  230. data/docs/PortfolioTransaction.md +37 -0
  231. data/docs/Question.md +23 -0
  232. data/docs/Questionnaire.md +17 -0
  233. data/docs/QuestionnaireApi.md +1212 -0
  234. data/docs/ReasonCode.md +17 -0
  235. data/docs/ResourceApi.md +534 -0
  236. data/docs/RiskProfile.md +18 -0
  237. data/docs/RiskProfileApi.md +309 -0
  238. data/docs/Roundup.md +15 -0
  239. data/docs/RoundupApi.md +492 -0
  240. data/docs/RoundupCO.md +12 -0
  241. data/docs/RoundupSettings.md +21 -0
  242. data/docs/Score.md +23 -0
  243. data/docs/ScoreApi.md +309 -0
  244. data/docs/SecuritiesApi.md +917 -0
  245. data/docs/SecuritiesComposition.md +11 -0
  246. data/docs/SecuritiesCountry.md +9 -0
  247. data/docs/Security.md +32 -0
  248. data/docs/SecurityCompositionVO.md +21 -0
  249. data/docs/SecurityCountryVO.md +9 -0
  250. data/docs/SecurityExclusion.md +18 -0
  251. data/docs/SecurityPrice.md +20 -0
  252. data/docs/Sort.md +13 -0
  253. data/docs/SpendingControl.md +21 -0
  254. data/docs/SpendingControlApi.md +309 -0
  255. data/docs/Stage.md +22 -0
  256. data/docs/Stat.md +9 -0
  257. data/docs/State.md +10 -0
  258. data/docs/StatisticResourceVO.md +11 -0
  259. data/docs/TokenDateRequest.md +13 -0
  260. data/docs/TransactionCode.md +20 -0
  261. data/docs/UtilsApi.md +911 -0
  262. data/docs/VAccountAssetSize.md +11 -0
  263. data/docs/VAccountVO.md +13 -0
  264. data/docs/VClientGoalViewData.md +13 -0
  265. data/docs/VPortfolioVO.md +11 -0
  266. data/docs/Webhook.md +15 -0
  267. data/docs/WebhookApi.md +309 -0
  268. data/git_push.sh +55 -0
  269. data/lib/nucleus_api.rb +303 -0
  270. data/lib/nucleus_api/api/account_api.rb +1794 -0
  271. data/lib/nucleus_api/api/admin_client_api.rb +301 -0
  272. data/lib/nucleus_api/api/aggregation_account_api.rb +1587 -0
  273. data/lib/nucleus_api/api/allocation_api.rb +824 -0
  274. data/lib/nucleus_api/api/application_api.rb +301 -0
  275. data/lib/nucleus_api/api/audit_log_api.rb +190 -0
  276. data/lib/nucleus_api/api/benchmark_api.rb +362 -0
  277. data/lib/nucleus_api/api/budget_api.rb +307 -0
  278. data/lib/nucleus_api/api/bulk_api.rb +253 -0
  279. data/lib/nucleus_api/api/business_api.rb +508 -0
  280. data/lib/nucleus_api/api/card_api.rb +719 -0
  281. data/lib/nucleus_api/api/client_api.rb +950 -0
  282. data/lib/nucleus_api/api/customer_api.rb +585 -0
  283. data/lib/nucleus_api/api/decision_tree_api.rb +913 -0
  284. data/lib/nucleus_api/api/document_api.rb +301 -0
  285. data/lib/nucleus_api/api/feature_api.rb +579 -0
  286. data/lib/nucleus_api/api/financial_statement_api.rb +307 -0
  287. data/lib/nucleus_api/api/funding_api.rb +1497 -0
  288. data/lib/nucleus_api/api/goal_api.rb +819 -0
  289. data/lib/nucleus_api/api/household_api.rb +508 -0
  290. data/lib/nucleus_api/api/invoice_api.rb +591 -0
  291. data/lib/nucleus_api/api/model_api.rb +1479 -0
  292. data/lib/nucleus_api/api/notification_api.rb +857 -0
  293. data/lib/nucleus_api/api/order_api.rb +1688 -0
  294. data/lib/nucleus_api/api/overflow_api.rb +468 -0
  295. data/lib/nucleus_api/api/performance_api.rb +1131 -0
  296. data/lib/nucleus_api/api/portfolio_api.rb +1776 -0
  297. data/lib/nucleus_api/api/questionnaire_api.rb +1135 -0
  298. data/lib/nucleus_api/api/resource_api.rb +479 -0
  299. data/lib/nucleus_api/api/risk_profile_api.rb +301 -0
  300. data/lib/nucleus_api/api/roundup_api.rb +468 -0
  301. data/lib/nucleus_api/api/score_api.rb +301 -0
  302. data/lib/nucleus_api/api/securities_api.rb +863 -0
  303. data/lib/nucleus_api/api/spending_control_api.rb +301 -0
  304. data/lib/nucleus_api/api/utils_api.rb +857 -0
  305. data/lib/nucleus_api/api/webhook_api.rb +301 -0
  306. data/lib/nucleus_api/api_client.rb +428 -0
  307. data/lib/nucleus_api/api_error.rb +38 -0
  308. data/lib/nucleus_api/auth_configuration.rb +177 -0
  309. data/lib/nucleus_api/configuration.rb +224 -0
  310. data/lib/nucleus_api/models/account.rb +333 -0
  311. data/lib/nucleus_api/models/account_allocation_mapping.rb +294 -0
  312. data/lib/nucleus_api/models/account_map.rb +202 -0
  313. data/lib/nucleus_api/models/account_permission_vo.rb +195 -0
  314. data/lib/nucleus_api/models/account_portfolio_rebalance_request.rb +313 -0
  315. data/lib/nucleus_api/models/account_status.rb +275 -0
  316. data/lib/nucleus_api/models/account_type.rb +335 -0
  317. data/lib/nucleus_api/models/acl_client_permission_vo.rb +236 -0
  318. data/lib/nucleus_api/models/admin_client.rb +272 -0
  319. data/lib/nucleus_api/models/aggregation_account.rb +420 -0
  320. data/lib/nucleus_api/models/aggregation_account_balance.rb +284 -0
  321. data/lib/nucleus_api/models/aggregation_account_holding.rb +364 -0
  322. data/lib/nucleus_api/models/aggregation_account_transaction.rb +382 -0
  323. data/lib/nucleus_api/models/aggregation_accounts_map.rb +202 -0
  324. data/lib/nucleus_api/models/allocation.rb +325 -0
  325. data/lib/nucleus_api/models/allocation_aggregated_vo.rb +228 -0
  326. data/lib/nucleus_api/models/allocation_composition.rb +304 -0
  327. data/lib/nucleus_api/models/allocation_composition_aggregated_vo.rb +282 -0
  328. data/lib/nucleus_api/models/allocation_composition_model_holdings_vo.rb +311 -0
  329. data/lib/nucleus_api/models/allocation_node_map.rb +187 -0
  330. data/lib/nucleus_api/models/answer.rb +286 -0
  331. data/lib/nucleus_api/models/answer_map.rb +181 -0
  332. data/lib/nucleus_api/models/application.rb +256 -0
  333. data/lib/nucleus_api/models/audit_log.rb +357 -0
  334. data/lib/nucleus_api/models/available_date_double_vo.rb +243 -0
  335. data/lib/nucleus_api/models/bank_credit.rb +262 -0
  336. data/lib/nucleus_api/models/bank_link.rb +410 -0
  337. data/lib/nucleus_api/models/bank_link_map.rb +202 -0
  338. data/lib/nucleus_api/models/benchmark.rb +277 -0
  339. data/lib/nucleus_api/models/benchmark_composition.rb +202 -0
  340. data/lib/nucleus_api/models/brokers.rb +203 -0
  341. data/lib/nucleus_api/models/budget.rb +372 -0
  342. data/lib/nucleus_api/models/budget_aggregation_account.rb +187 -0
  343. data/lib/nucleus_api/models/budget_object.rb +213 -0
  344. data/lib/nucleus_api/models/bulk_transaction.rb +226 -0
  345. data/lib/nucleus_api/models/bulk_transaction_vo.rb +217 -0
  346. data/lib/nucleus_api/models/business.rb +430 -0
  347. data/lib/nucleus_api/models/business_address.rb +278 -0
  348. data/lib/nucleus_api/models/card.rb +489 -0
  349. data/lib/nucleus_api/models/card_address.rb +268 -0
  350. data/lib/nucleus_api/models/card_program.rb +350 -0
  351. data/lib/nucleus_api/models/cash.rb +213 -0
  352. data/lib/nucleus_api/models/categories_map.rb +202 -0
  353. data/lib/nucleus_api/models/category_internal_response_vo.rb +201 -0
  354. data/lib/nucleus_api/models/category_response_vo.rb +192 -0
  355. data/lib/nucleus_api/models/check.rb +210 -0
  356. data/lib/nucleus_api/models/check_images.rb +198 -0
  357. data/lib/nucleus_api/models/client.rb +523 -0
  358. data/lib/nucleus_api/models/client_account_mapping.rb +212 -0
  359. data/lib/nucleus_api/models/client_address.rb +278 -0
  360. data/lib/nucleus_api/models/client_relationship.rb +209 -0
  361. data/lib/nucleus_api/models/client_response.rb +280 -0
  362. data/lib/nucleus_api/models/client_status.rb +275 -0
  363. data/lib/nucleus_api/models/client_view_goal_data.rb +302 -0
  364. data/lib/nucleus_api/models/country.rb +233 -0
  365. data/lib/nucleus_api/models/currency.rb +212 -0
  366. data/lib/nucleus_api/models/customer.rb +317 -0
  367. data/lib/nucleus_api/models/customer_address.rb +268 -0
  368. data/lib/nucleus_api/models/customer_revenue.rb +284 -0
  369. data/lib/nucleus_api/models/daily_deposit.rb +395 -0
  370. data/lib/nucleus_api/models/daily_withdrawal.rb +405 -0
  371. data/lib/nucleus_api/models/date_double_vo.rb +203 -0
  372. data/lib/nucleus_api/models/decision_tree.rb +275 -0
  373. data/lib/nucleus_api/models/decision_tree_co.rb +202 -0
  374. data/lib/nucleus_api/models/decision_tree_result_vo.rb +192 -0
  375. data/lib/nucleus_api/models/document.rb +409 -0
  376. data/lib/nucleus_api/models/employment.rb +213 -0
  377. data/lib/nucleus_api/models/external_account_transfer.rb +412 -0
  378. data/lib/nucleus_api/models/feature.rb +286 -0
  379. data/lib/nucleus_api/models/feature_track.rb +251 -0
  380. data/lib/nucleus_api/models/financial_statement.rb +352 -0
  381. data/lib/nucleus_api/models/funding.rb +496 -0
  382. data/lib/nucleus_api/models/funding_request_map.rb +187 -0
  383. data/lib/nucleus_api/models/fx_rate_view.rb +233 -0
  384. data/lib/nucleus_api/models/goal.rb +340 -0
  385. data/lib/nucleus_api/models/goal_account_mapping.rb +218 -0
  386. data/lib/nucleus_api/models/goal_track.rb +372 -0
  387. data/lib/nucleus_api/models/goal_track_accounts.rb +187 -0
  388. data/lib/nucleus_api/models/household.rb +285 -0
  389. data/lib/nucleus_api/models/investment.rb +283 -0
  390. data/lib/nucleus_api/models/invoice.rb +452 -0
  391. data/lib/nucleus_api/models/invoice_payment.rb +269 -0
  392. data/lib/nucleus_api/models/json_node.rb +404 -0
  393. data/lib/nucleus_api/models/line_items.rb +278 -0
  394. data/lib/nucleus_api/models/location.rb +253 -0
  395. data/lib/nucleus_api/models/member.rb +217 -0
  396. data/lib/nucleus_api/models/merchant_category_code.rb +213 -0
  397. data/lib/nucleus_api/models/merchants_map.rb +202 -0
  398. data/lib/nucleus_api/models/model.rb +396 -0
  399. data/lib/nucleus_api/models/model_asset_size.rb +274 -0
  400. data/lib/nucleus_api/models/model_comment.rb +264 -0
  401. data/lib/nucleus_api/models/model_holding.rb +370 -0
  402. data/lib/nucleus_api/models/model_holding_vo.rb +208 -0
  403. data/lib/nucleus_api/models/model_transaction.rb +298 -0
  404. data/lib/nucleus_api/models/mx_merchant_res.rb +235 -0
  405. data/lib/nucleus_api/models/node.rb +260 -0
  406. data/lib/nucleus_api/models/node_relationship.rb +300 -0
  407. data/lib/nucleus_api/models/notification.rb +313 -0
  408. data/lib/nucleus_api/models/notification_client.rb +309 -0
  409. data/lib/nucleus_api/models/notification_setting.rb +300 -0
  410. data/lib/nucleus_api/models/order.rb +390 -0
  411. data/lib/nucleus_api/models/order_bulk.rb +309 -0
  412. data/lib/nucleus_api/models/order_reconcile_request.rb +220 -0
  413. data/lib/nucleus_api/models/order_reconcile_return_object.rb +227 -0
  414. data/lib/nucleus_api/models/order_status.rb +250 -0
  415. data/lib/nucleus_api/models/order_track.rb +316 -0
  416. data/lib/nucleus_api/models/order_vo_clone.rb +304 -0
  417. data/lib/nucleus_api/models/overflow.rb +281 -0
  418. data/lib/nucleus_api/models/overflow_bank_link_map.rb +202 -0
  419. data/lib/nucleus_api/models/overflow_settings.rb +287 -0
  420. data/lib/nucleus_api/models/overflow_vo.rb +203 -0
  421. data/lib/nucleus_api/models/ownership.rb +233 -0
  422. data/lib/nucleus_api/models/page_account.rb +258 -0
  423. data/lib/nucleus_api/models/page_account_allocation_mapping.rb +258 -0
  424. data/lib/nucleus_api/models/page_account_permission_vo.rb +258 -0
  425. data/lib/nucleus_api/models/page_account_status.rb +258 -0
  426. data/lib/nucleus_api/models/page_account_type.rb +258 -0
  427. data/lib/nucleus_api/models/page_admin_client.rb +258 -0
  428. data/lib/nucleus_api/models/page_aggregation_account.rb +258 -0
  429. data/lib/nucleus_api/models/page_aggregation_account_balance.rb +258 -0
  430. data/lib/nucleus_api/models/page_aggregation_account_holding.rb +258 -0
  431. data/lib/nucleus_api/models/page_aggregation_account_transaction.rb +258 -0
  432. data/lib/nucleus_api/models/page_allocation.rb +258 -0
  433. data/lib/nucleus_api/models/page_allocation_composition.rb +258 -0
  434. data/lib/nucleus_api/models/page_answer.rb +258 -0
  435. data/lib/nucleus_api/models/page_application.rb +258 -0
  436. data/lib/nucleus_api/models/page_audit_log.rb +258 -0
  437. data/lib/nucleus_api/models/page_bank_link.rb +258 -0
  438. data/lib/nucleus_api/models/page_benchmark.rb +258 -0
  439. data/lib/nucleus_api/models/page_budget.rb +258 -0
  440. data/lib/nucleus_api/models/page_business.rb +258 -0
  441. data/lib/nucleus_api/models/page_card.rb +258 -0
  442. data/lib/nucleus_api/models/page_card_program.rb +258 -0
  443. data/lib/nucleus_api/models/page_client.rb +258 -0
  444. data/lib/nucleus_api/models/page_client_response.rb +258 -0
  445. data/lib/nucleus_api/models/page_client_status.rb +258 -0
  446. data/lib/nucleus_api/models/page_customer.rb +258 -0
  447. data/lib/nucleus_api/models/page_customer_revenue.rb +258 -0
  448. data/lib/nucleus_api/models/page_daily_deposit.rb +258 -0
  449. data/lib/nucleus_api/models/page_daily_withdrawal.rb +258 -0
  450. data/lib/nucleus_api/models/page_decision_tree.rb +258 -0
  451. data/lib/nucleus_api/models/page_document.rb +258 -0
  452. data/lib/nucleus_api/models/page_external_account_transfer.rb +258 -0
  453. data/lib/nucleus_api/models/page_feature.rb +258 -0
  454. data/lib/nucleus_api/models/page_feature_track.rb +258 -0
  455. data/lib/nucleus_api/models/page_financial_statement.rb +258 -0
  456. data/lib/nucleus_api/models/page_funding.rb +258 -0
  457. data/lib/nucleus_api/models/page_goal.rb +258 -0
  458. data/lib/nucleus_api/models/page_goal_track.rb +258 -0
  459. data/lib/nucleus_api/models/page_household.rb +258 -0
  460. data/lib/nucleus_api/models/page_invoice.rb +258 -0
  461. data/lib/nucleus_api/models/page_invoice_payment.rb +258 -0
  462. data/lib/nucleus_api/models/page_model.rb +258 -0
  463. data/lib/nucleus_api/models/page_model_asset_size.rb +258 -0
  464. data/lib/nucleus_api/models/page_model_comment.rb +258 -0
  465. data/lib/nucleus_api/models/page_model_holding.rb +258 -0
  466. data/lib/nucleus_api/models/page_model_transaction.rb +258 -0
  467. data/lib/nucleus_api/models/page_mx_merchant_res.rb +255 -0
  468. data/lib/nucleus_api/models/page_node.rb +258 -0
  469. data/lib/nucleus_api/models/page_node_relationship.rb +258 -0
  470. data/lib/nucleus_api/models/page_notification.rb +258 -0
  471. data/lib/nucleus_api/models/page_notification_client.rb +258 -0
  472. data/lib/nucleus_api/models/page_notification_setting.rb +258 -0
  473. data/lib/nucleus_api/models/page_order.rb +258 -0
  474. data/lib/nucleus_api/models/page_order_bulk.rb +258 -0
  475. data/lib/nucleus_api/models/page_order_status.rb +258 -0
  476. data/lib/nucleus_api/models/page_order_track.rb +258 -0
  477. data/lib/nucleus_api/models/page_overflow.rb +258 -0
  478. data/lib/nucleus_api/models/page_overflow_settings.rb +258 -0
  479. data/lib/nucleus_api/models/page_portfolio.rb +258 -0
  480. data/lib/nucleus_api/models/page_portfolio_asset_size_log.rb +258 -0
  481. data/lib/nucleus_api/models/page_portfolio_comment.rb +258 -0
  482. data/lib/nucleus_api/models/page_portfolio_goal.rb +258 -0
  483. data/lib/nucleus_api/models/page_portfolio_holding_log.rb +258 -0
  484. data/lib/nucleus_api/models/page_portfolio_transaction.rb +258 -0
  485. data/lib/nucleus_api/models/page_question.rb +258 -0
  486. data/lib/nucleus_api/models/page_questionnaire.rb +258 -0
  487. data/lib/nucleus_api/models/page_reason_code.rb +258 -0
  488. data/lib/nucleus_api/models/page_risk_profile.rb +258 -0
  489. data/lib/nucleus_api/models/page_roundup.rb +258 -0
  490. data/lib/nucleus_api/models/page_roundup_settings.rb +258 -0
  491. data/lib/nucleus_api/models/page_score.rb +258 -0
  492. data/lib/nucleus_api/models/page_security.rb +258 -0
  493. data/lib/nucleus_api/models/page_security_exclusion.rb +258 -0
  494. data/lib/nucleus_api/models/page_security_price.rb +258 -0
  495. data/lib/nucleus_api/models/page_spending_control.rb +258 -0
  496. data/lib/nucleus_api/models/page_stage.rb +258 -0
  497. data/lib/nucleus_api/models/page_transaction_code.rb +258 -0
  498. data/lib/nucleus_api/models/page_v_account_asset_size.rb +258 -0
  499. data/lib/nucleus_api/models/page_webhook.rb +258 -0
  500. data/lib/nucleus_api/models/permission_vo.rb +226 -0
  501. data/lib/nucleus_api/models/portfolio.rb +341 -0
  502. data/lib/nucleus_api/models/portfolio_asset_size_log.rb +329 -0
  503. data/lib/nucleus_api/models/portfolio_comment.rb +279 -0
  504. data/lib/nucleus_api/models/portfolio_goal.rb +255 -0
  505. data/lib/nucleus_api/models/portfolio_goal_map.rb +202 -0
  506. data/lib/nucleus_api/models/portfolio_holding_agg.rb +243 -0
  507. data/lib/nucleus_api/models/portfolio_holding_log.rb +339 -0
  508. data/lib/nucleus_api/models/portfolio_transaction.rb +495 -0
  509. data/lib/nucleus_api/models/question.rb +334 -0
  510. data/lib/nucleus_api/models/questionnaire.rb +275 -0
  511. data/lib/nucleus_api/models/reason_code.rb +274 -0
  512. data/lib/nucleus_api/models/risk_profile.rb +286 -0
  513. data/lib/nucleus_api/models/roundup.rb +266 -0
  514. data/lib/nucleus_api/models/roundup_co.rb +232 -0
  515. data/lib/nucleus_api/models/roundup_settings.rb +331 -0
  516. data/lib/nucleus_api/models/score.rb +374 -0
  517. data/lib/nucleus_api/models/securities_composition.rb +232 -0
  518. data/lib/nucleus_api/models/securities_country.rb +202 -0
  519. data/lib/nucleus_api/models/security.rb +434 -0
  520. data/lib/nucleus_api/models/security_composition_vo.rb +300 -0
  521. data/lib/nucleus_api/models/security_country_vo.rb +190 -0
  522. data/lib/nucleus_api/models/security_exclusion.rb +300 -0
  523. data/lib/nucleus_api/models/security_price.rb +313 -0
  524. data/lib/nucleus_api/models/sort.rb +233 -0
  525. data/lib/nucleus_api/models/spending_control.rb +331 -0
  526. data/lib/nucleus_api/models/stage.rb +325 -0
  527. data/lib/nucleus_api/models/stat.rb +203 -0
  528. data/lib/nucleus_api/models/state.rb +202 -0
  529. data/lib/nucleus_api/models/statistic_resource_vo.rb +208 -0
  530. data/lib/nucleus_api/models/token_date_request.rb +233 -0
  531. data/lib/nucleus_api/models/transaction_code.rb +362 -0
  532. data/lib/nucleus_api/models/v_account_asset_size.rb +212 -0
  533. data/lib/nucleus_api/models/v_account_vo.rb +226 -0
  534. data/lib/nucleus_api/models/v_client_goal_view_data.rb +228 -0
  535. data/lib/nucleus_api/models/v_portfolio_vo.rb +208 -0
  536. data/lib/nucleus_api/models/webhook.rb +280 -0
  537. data/lib/nucleus_api/version.rb +15 -0
  538. data/nucleus_api.gemspec +46 -0
  539. data/spec/api/account_api_spec.rb +455 -0
  540. data/spec/api/admin_client_api_spec.rb +100 -0
  541. data/spec/api/aggregation_account_api_spec.rb +399 -0
  542. data/spec/api/allocation_api_spec.rb +225 -0
  543. data/spec/api/application_api_spec.rb +100 -0
  544. data/spec/api/audit_log_api_spec.rb +75 -0
  545. data/spec/api/benchmark_api_spec.rb +115 -0
  546. data/spec/api/budget_api_spec.rb +102 -0
  547. data/spec/api/bulk_api_spec.rb +86 -0
  548. data/spec/api/business_api_spec.rb +153 -0
  549. data/spec/api/card_api_spec.rb +201 -0
  550. data/spec/api/client_api_spec.rb +256 -0
  551. data/spec/api/customer_api_spec.rb +167 -0
  552. data/spec/api/decision_tree_api_spec.rb +242 -0
  553. data/spec/api/document_api_spec.rb +100 -0
  554. data/spec/api/feature_api_spec.rb +165 -0
  555. data/spec/api/financial_statement_api_spec.rb +102 -0
  556. data/spec/api/funding_api_spec.rb +382 -0
  557. data/spec/api/goal_api_spec.rb +225 -0
  558. data/spec/api/household_api_spec.rb +153 -0
  559. data/spec/api/invoice_api_spec.rb +169 -0
  560. data/spec/api/model_api_spec.rb +375 -0
  561. data/spec/api/notification_api_spec.rb +230 -0
  562. data/spec/api/order_api_spec.rb +412 -0
  563. data/spec/api/overflow_api_spec.rb +140 -0
  564. data/spec/api/performance_api_spec.rb +355 -0
  565. data/spec/api/portfolio_api_spec.rb +448 -0
  566. data/spec/api/questionnaire_api_spec.rb +295 -0
  567. data/spec/api/resource_api_spec.rb +148 -0
  568. data/spec/api/risk_profile_api_spec.rb +100 -0
  569. data/spec/api/roundup_api_spec.rb +140 -0
  570. data/spec/api/score_api_spec.rb +100 -0
  571. data/spec/api/securities_api_spec.rb +232 -0
  572. data/spec/api/spending_control_api_spec.rb +100 -0
  573. data/spec/api/utils_api_spec.rb +230 -0
  574. data/spec/api/webhook_api_spec.rb +100 -0
  575. data/spec/api_client_spec.rb +243 -0
  576. data/spec/configuration_spec.rb +42 -0
  577. data/spec/models/account_allocation_mapping_spec.rb +95 -0
  578. data/spec/models/account_map_spec.rb +47 -0
  579. data/spec/models/account_permission_vo_spec.rb +47 -0
  580. data/spec/models/account_portfolio_rebalance_request_spec.rb +119 -0
  581. data/spec/models/account_spec.rb +125 -0
  582. data/spec/models/account_status_spec.rb +89 -0
  583. data/spec/models/account_type_spec.rb +131 -0
  584. data/spec/models/acl_client_permission_vo_spec.rb +57 -0
  585. data/spec/models/admin_client_spec.rb +101 -0
  586. data/spec/models/aggregation_account_balance_spec.rb +101 -0
  587. data/spec/models/aggregation_account_holding_spec.rb +149 -0
  588. data/spec/models/aggregation_account_spec.rb +173 -0
  589. data/spec/models/aggregation_account_transaction_spec.rb +139 -0
  590. data/spec/models/aggregation_accounts_map_spec.rb +47 -0
  591. data/spec/models/allocation_aggregated_vo_spec.rb +71 -0
  592. data/spec/models/allocation_composition_aggregated_vo_spec.rb +107 -0
  593. data/spec/models/allocation_composition_model_holdings_vo_spec.rb +125 -0
  594. data/spec/models/allocation_composition_spec.rb +101 -0
  595. data/spec/models/allocation_node_map_spec.rb +41 -0
  596. data/spec/models/allocation_spec.rb +125 -0
  597. data/spec/models/answer_map_spec.rb +41 -0
  598. data/spec/models/answer_spec.rb +101 -0
  599. data/spec/models/application_spec.rb +83 -0
  600. data/spec/models/audit_log_spec.rb +131 -0
  601. data/spec/models/available_date_double_vo_spec.rb +77 -0
  602. data/spec/models/bank_credit_spec.rb +83 -0
  603. data/spec/models/bank_link_map_spec.rb +47 -0
  604. data/spec/models/bank_link_spec.rb +167 -0
  605. data/spec/models/benchmark_composition_spec.rb +47 -0
  606. data/spec/models/benchmark_spec.rb +95 -0
  607. data/spec/models/brokers_spec.rb +47 -0
  608. data/spec/models/budget_aggregation_account_spec.rb +41 -0
  609. data/spec/models/budget_object_spec.rb +53 -0
  610. data/spec/models/budget_spec.rb +143 -0
  611. data/spec/models/bulk_transaction_spec.rb +71 -0
  612. data/spec/models/bulk_transaction_vo_spec.rb +65 -0
  613. data/spec/models/business_address_spec.rb +83 -0
  614. data/spec/models/business_spec.rb +185 -0
  615. data/spec/models/card_address_spec.rb +77 -0
  616. data/spec/models/card_program_spec.rb +131 -0
  617. data/spec/models/card_spec.rb +202 -0
  618. data/spec/models/cash_spec.rb +53 -0
  619. data/spec/models/categories_map_spec.rb +47 -0
  620. data/spec/models/category_internal_response_vo_spec.rb +53 -0
  621. data/spec/models/category_response_vo_spec.rb +47 -0
  622. data/spec/models/check_images_spec.rb +47 -0
  623. data/spec/models/check_spec.rb +53 -0
  624. data/spec/models/client_account_mapping_spec.rb +53 -0
  625. data/spec/models/client_address_spec.rb +83 -0
  626. data/spec/models/client_relationship_spec.rb +53 -0
  627. data/spec/models/client_response_spec.rb +95 -0
  628. data/spec/models/client_spec.rb +239 -0
  629. data/spec/models/client_status_spec.rb +89 -0
  630. data/spec/models/client_view_goal_data_spec.rb +119 -0
  631. data/spec/models/country_spec.rb +65 -0
  632. data/spec/models/currency_spec.rb +59 -0
  633. data/spec/models/customer_address_spec.rb +77 -0
  634. data/spec/models/customer_revenue_spec.rb +89 -0
  635. data/spec/models/customer_spec.rb +119 -0
  636. data/spec/models/daily_deposit_spec.rb +161 -0
  637. data/spec/models/daily_withdrawal_spec.rb +167 -0
  638. data/spec/models/date_double_vo_spec.rb +53 -0
  639. data/spec/models/decision_tree_co_spec.rb +47 -0
  640. data/spec/models/decision_tree_result_vo_spec.rb +47 -0
  641. data/spec/models/decision_tree_spec.rb +95 -0
  642. data/spec/models/document_spec.rb +173 -0
  643. data/spec/models/employment_spec.rb +59 -0
  644. data/spec/models/external_account_transfer_spec.rb +161 -0
  645. data/spec/models/feature_spec.rb +101 -0
  646. data/spec/models/feature_track_spec.rb +77 -0
  647. data/spec/models/financial_statement_spec.rb +131 -0
  648. data/spec/models/funding_request_map_spec.rb +41 -0
  649. data/spec/models/funding_spec.rb +215 -0
  650. data/spec/models/fx_rate_view_spec.rb +59 -0
  651. data/spec/models/goal_account_mapping_spec.rb +59 -0
  652. data/spec/models/goal_spec.rb +137 -0
  653. data/spec/models/goal_track_accounts_spec.rb +41 -0
  654. data/spec/models/goal_track_spec.rb +149 -0
  655. data/spec/models/household_spec.rb +101 -0
  656. data/spec/models/investment_spec.rb +89 -0
  657. data/spec/models/invoice_payment_spec.rb +83 -0
  658. data/spec/models/invoice_spec.rb +185 -0
  659. data/spec/models/json_node_spec.rb +171 -0
  660. data/spec/models/line_items_spec.rb +83 -0
  661. data/spec/models/location_spec.rb +83 -0
  662. data/spec/models/member_spec.rb +59 -0
  663. data/spec/models/merchant_category_code_spec.rb +59 -0
  664. data/spec/models/merchants_map_spec.rb +47 -0
  665. data/spec/models/model_asset_size_spec.rb +89 -0
  666. data/spec/models/model_comment_spec.rb +83 -0
  667. data/spec/models/model_holding_spec.rb +143 -0
  668. data/spec/models/model_holding_vo_spec.rb +59 -0
  669. data/spec/models/model_spec.rb +167 -0
  670. data/spec/models/model_transaction_spec.rb +95 -0
  671. data/spec/models/mx_merchant_res_spec.rb +77 -0
  672. data/spec/models/node_relationship_spec.rb +101 -0
  673. data/spec/models/node_spec.rb +83 -0
  674. data/spec/models/notification_client_spec.rb +107 -0
  675. data/spec/models/notification_setting_spec.rb +107 -0
  676. data/spec/models/notification_spec.rb +113 -0
  677. data/spec/models/order_bulk_spec.rb +101 -0
  678. data/spec/models/order_reconcile_request_spec.rb +65 -0
  679. data/spec/models/order_reconcile_return_object_spec.rb +65 -0
  680. data/spec/models/order_spec.rb +155 -0
  681. data/spec/models/order_status_spec.rb +77 -0
  682. data/spec/models/order_track_spec.rb +113 -0
  683. data/spec/models/order_vo_clone_spec.rb +113 -0
  684. data/spec/models/overflow_bank_link_map_spec.rb +47 -0
  685. data/spec/models/overflow_settings_spec.rb +95 -0
  686. data/spec/models/overflow_spec.rb +89 -0
  687. data/spec/models/overflow_vo_spec.rb +53 -0
  688. data/spec/models/ownership_spec.rb +65 -0
  689. data/spec/models/page_account_allocation_mapping_spec.rb +89 -0
  690. data/spec/models/page_account_permission_vo_spec.rb +89 -0
  691. data/spec/models/page_account_spec.rb +89 -0
  692. data/spec/models/page_account_status_spec.rb +89 -0
  693. data/spec/models/page_account_type_spec.rb +89 -0
  694. data/spec/models/page_admin_client_spec.rb +89 -0
  695. data/spec/models/page_aggregation_account_balance_spec.rb +89 -0
  696. data/spec/models/page_aggregation_account_holding_spec.rb +89 -0
  697. data/spec/models/page_aggregation_account_spec.rb +89 -0
  698. data/spec/models/page_aggregation_account_transaction_spec.rb +89 -0
  699. data/spec/models/page_allocation_composition_spec.rb +89 -0
  700. data/spec/models/page_allocation_spec.rb +89 -0
  701. data/spec/models/page_answer_spec.rb +89 -0
  702. data/spec/models/page_application_spec.rb +89 -0
  703. data/spec/models/page_audit_log_spec.rb +89 -0
  704. data/spec/models/page_bank_link_spec.rb +89 -0
  705. data/spec/models/page_benchmark_spec.rb +89 -0
  706. data/spec/models/page_budget_spec.rb +89 -0
  707. data/spec/models/page_business_spec.rb +89 -0
  708. data/spec/models/page_card_program_spec.rb +89 -0
  709. data/spec/models/page_card_spec.rb +89 -0
  710. data/spec/models/page_client_response_spec.rb +89 -0
  711. data/spec/models/page_client_spec.rb +89 -0
  712. data/spec/models/page_client_status_spec.rb +89 -0
  713. data/spec/models/page_customer_revenue_spec.rb +89 -0
  714. data/spec/models/page_customer_spec.rb +89 -0
  715. data/spec/models/page_daily_deposit_spec.rb +89 -0
  716. data/spec/models/page_daily_withdrawal_spec.rb +89 -0
  717. data/spec/models/page_decision_tree_spec.rb +89 -0
  718. data/spec/models/page_document_spec.rb +89 -0
  719. data/spec/models/page_external_account_transfer_spec.rb +89 -0
  720. data/spec/models/page_feature_spec.rb +89 -0
  721. data/spec/models/page_feature_track_spec.rb +89 -0
  722. data/spec/models/page_financial_statement_spec.rb +89 -0
  723. data/spec/models/page_funding_spec.rb +89 -0
  724. data/spec/models/page_goal_spec.rb +89 -0
  725. data/spec/models/page_goal_track_spec.rb +89 -0
  726. data/spec/models/page_household_spec.rb +89 -0
  727. data/spec/models/page_invoice_payment_spec.rb +89 -0
  728. data/spec/models/page_invoice_spec.rb +89 -0
  729. data/spec/models/page_model_asset_size_spec.rb +89 -0
  730. data/spec/models/page_model_comment_spec.rb +89 -0
  731. data/spec/models/page_model_holding_spec.rb +89 -0
  732. data/spec/models/page_model_spec.rb +89 -0
  733. data/spec/models/page_model_transaction_spec.rb +89 -0
  734. data/spec/models/page_mx_merchant_res_spec.rb +89 -0
  735. data/spec/models/page_node_relationship_spec.rb +89 -0
  736. data/spec/models/page_node_spec.rb +89 -0
  737. data/spec/models/page_notification_client_spec.rb +89 -0
  738. data/spec/models/page_notification_setting_spec.rb +89 -0
  739. data/spec/models/page_notification_spec.rb +89 -0
  740. data/spec/models/page_order_bulk_spec.rb +89 -0
  741. data/spec/models/page_order_spec.rb +89 -0
  742. data/spec/models/page_order_status_spec.rb +89 -0
  743. data/spec/models/page_order_track_spec.rb +89 -0
  744. data/spec/models/page_overflow_settings_spec.rb +89 -0
  745. data/spec/models/page_overflow_spec.rb +89 -0
  746. data/spec/models/page_portfolio_asset_size_log_spec.rb +89 -0
  747. data/spec/models/page_portfolio_comment_spec.rb +89 -0
  748. data/spec/models/page_portfolio_goal_spec.rb +89 -0
  749. data/spec/models/page_portfolio_holding_log_spec.rb +89 -0
  750. data/spec/models/page_portfolio_spec.rb +89 -0
  751. data/spec/models/page_portfolio_transaction_spec.rb +89 -0
  752. data/spec/models/page_question_spec.rb +89 -0
  753. data/spec/models/page_questionnaire_spec.rb +89 -0
  754. data/spec/models/page_reason_code_spec.rb +89 -0
  755. data/spec/models/page_risk_profile_spec.rb +89 -0
  756. data/spec/models/page_roundup_settings_spec.rb +89 -0
  757. data/spec/models/page_roundup_spec.rb +89 -0
  758. data/spec/models/page_score_spec.rb +89 -0
  759. data/spec/models/page_security_exclusion_spec.rb +89 -0
  760. data/spec/models/page_security_price_spec.rb +89 -0
  761. data/spec/models/page_security_spec.rb +89 -0
  762. data/spec/models/page_spending_control_spec.rb +89 -0
  763. data/spec/models/page_stage_spec.rb +89 -0
  764. data/spec/models/page_transaction_code_spec.rb +89 -0
  765. data/spec/models/page_v_account_asset_size_spec.rb +89 -0
  766. data/spec/models/page_webhook_spec.rb +89 -0
  767. data/spec/models/permission_vo_spec.rb +51 -0
  768. data/spec/models/portfolio_asset_size_log_spec.rb +113 -0
  769. data/spec/models/portfolio_comment_spec.rb +89 -0
  770. data/spec/models/portfolio_goal_map_spec.rb +47 -0
  771. data/spec/models/portfolio_goal_spec.rb +77 -0
  772. data/spec/models/portfolio_holding_agg_spec.rb +77 -0
  773. data/spec/models/portfolio_holding_log_spec.rb +119 -0
  774. data/spec/models/portfolio_spec.rb +125 -0
  775. data/spec/models/portfolio_transaction_spec.rb +215 -0
  776. data/spec/models/question_spec.rb +131 -0
  777. data/spec/models/questionnaire_spec.rb +95 -0
  778. data/spec/models/reason_code_spec.rb +95 -0
  779. data/spec/models/risk_profile_spec.rb +101 -0
  780. data/spec/models/roundup_co_spec.rb +65 -0
  781. data/spec/models/roundup_settings_spec.rb +119 -0
  782. data/spec/models/roundup_spec.rb +83 -0
  783. data/spec/models/score_spec.rb +135 -0
  784. data/spec/models/securities_composition_spec.rb +59 -0
  785. data/spec/models/securities_country_spec.rb +47 -0
  786. data/spec/models/security_composition_vo_spec.rb +119 -0
  787. data/spec/models/security_country_vo_spec.rb +47 -0
  788. data/spec/models/security_exclusion_spec.rb +101 -0
  789. data/spec/models/security_price_spec.rb +113 -0
  790. data/spec/models/security_spec.rb +185 -0
  791. data/spec/models/sort_spec.rb +71 -0
  792. data/spec/models/spending_control_spec.rb +119 -0
  793. data/spec/models/stage_spec.rb +125 -0
  794. data/spec/models/stat_spec.rb +47 -0
  795. data/spec/models/state_spec.rb +53 -0
  796. data/spec/models/statistic_resource_vo_spec.rb +59 -0
  797. data/spec/models/token_date_request_spec.rb +71 -0
  798. data/spec/models/transaction_code_spec.rb +125 -0
  799. data/spec/models/v_account_asset_size_spec.rb +59 -0
  800. data/spec/models/v_account_vo_spec.rb +71 -0
  801. data/spec/models/v_client_goal_view_data_spec.rb +71 -0
  802. data/spec/models/v_portfolio_vo_spec.rb +59 -0
  803. data/spec/models/webhook_spec.rb +87 -0
  804. data/spec/spec_helper.rb +111 -0
  805. metadata +1312 -0
@@ -0,0 +1,283 @@
1
+ =begin
2
+ #Hydrogen Nucleus API
3
+
4
+ #The Hydrogen Nucleus API
5
+
6
+ OpenAPI spec version: 1.8.0
7
+ Contact: info@hydrogenplatform.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.18
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module NucleusApi
16
+ # Investment Object
17
+ class Investment
18
+ # fee
19
+ attr_accessor :fee
20
+
21
+ # investmentType
22
+ attr_accessor :investment_type
23
+
24
+ # price
25
+ attr_accessor :price
26
+
27
+ # quantity
28
+ attr_accessor :quantity
29
+
30
+ # settleDate
31
+ attr_accessor :settle_date
32
+
33
+ # ticker
34
+ attr_accessor :ticker
35
+
36
+ # tickerName
37
+ attr_accessor :ticker_name
38
+
39
+ # tradeSignal
40
+ attr_accessor :trade_signal
41
+
42
+ # value
43
+ attr_accessor :value
44
+
45
+ # Attribute mapping from ruby-style variable name to JSON key.
46
+ def self.attribute_map
47
+ {
48
+ :'fee' => :'fee',
49
+ :'investment_type' => :'investment_type',
50
+ :'price' => :'price',
51
+ :'quantity' => :'quantity',
52
+ :'settle_date' => :'settle_date',
53
+ :'ticker' => :'ticker',
54
+ :'ticker_name' => :'ticker_name',
55
+ :'trade_signal' => :'trade_signal',
56
+ :'value' => :'value'
57
+ }
58
+ end
59
+
60
+ # Attribute type mapping.
61
+ def self.swagger_types
62
+ {
63
+ :'fee' => :'Float',
64
+ :'investment_type' => :'String',
65
+ :'price' => :'Float',
66
+ :'quantity' => :'Float',
67
+ :'settle_date' => :'DateTime',
68
+ :'ticker' => :'String',
69
+ :'ticker_name' => :'String',
70
+ :'trade_signal' => :'String',
71
+ :'value' => :'Float'
72
+ }
73
+ end
74
+
75
+ # Initializes the object
76
+ # @param [Hash] attributes Model attributes in the form of hash
77
+ def initialize(attributes = {})
78
+ return unless attributes.is_a?(Hash)
79
+
80
+ # convert string to symbol for hash key
81
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
82
+
83
+ if attributes.has_key?(:'fee')
84
+ self.fee = attributes[:'fee']
85
+ end
86
+
87
+ if attributes.has_key?(:'investment_type')
88
+ self.investment_type = attributes[:'investment_type']
89
+ end
90
+
91
+ if attributes.has_key?(:'price')
92
+ self.price = attributes[:'price']
93
+ end
94
+
95
+ if attributes.has_key?(:'quantity')
96
+ self.quantity = attributes[:'quantity']
97
+ end
98
+
99
+ if attributes.has_key?(:'settle_date')
100
+ self.settle_date = attributes[:'settle_date']
101
+ end
102
+
103
+ if attributes.has_key?(:'ticker')
104
+ self.ticker = attributes[:'ticker']
105
+ end
106
+
107
+ if attributes.has_key?(:'ticker_name')
108
+ self.ticker_name = attributes[:'ticker_name']
109
+ end
110
+
111
+ if attributes.has_key?(:'trade_signal')
112
+ self.trade_signal = attributes[:'trade_signal']
113
+ end
114
+
115
+ if attributes.has_key?(:'value')
116
+ self.value = attributes[:'value']
117
+ end
118
+ end
119
+
120
+ # Show invalid properties with the reasons. Usually used together with valid?
121
+ # @return Array for valid properties with the reasons
122
+ def list_invalid_properties
123
+ invalid_properties = Array.new
124
+ if @price.nil?
125
+ invalid_properties.push('invalid value for "price", price cannot be nil.')
126
+ end
127
+
128
+ if @quantity.nil?
129
+ invalid_properties.push('invalid value for "quantity", quantity cannot be nil.')
130
+ end
131
+
132
+ if @ticker.nil?
133
+ invalid_properties.push('invalid value for "ticker", ticker cannot be nil.')
134
+ end
135
+
136
+ if @trade_signal.nil?
137
+ invalid_properties.push('invalid value for "trade_signal", trade_signal cannot be nil.')
138
+ end
139
+
140
+ invalid_properties
141
+ end
142
+
143
+ # Check to see if the all the properties in the model are valid
144
+ # @return true if the model is valid
145
+ def valid?
146
+ return false if @price.nil?
147
+ return false if @quantity.nil?
148
+ return false if @ticker.nil?
149
+ return false if @trade_signal.nil?
150
+ true
151
+ end
152
+
153
+ # Checks equality by comparing each attribute.
154
+ # @param [Object] Object to be compared
155
+ def ==(o)
156
+ return true if self.equal?(o)
157
+ self.class == o.class &&
158
+ fee == o.fee &&
159
+ investment_type == o.investment_type &&
160
+ price == o.price &&
161
+ quantity == o.quantity &&
162
+ settle_date == o.settle_date &&
163
+ ticker == o.ticker &&
164
+ ticker_name == o.ticker_name &&
165
+ trade_signal == o.trade_signal &&
166
+ value == o.value
167
+ end
168
+
169
+ # @see the `==` method
170
+ # @param [Object] Object to be compared
171
+ def eql?(o)
172
+ self == o
173
+ end
174
+
175
+ # Calculates hash code according to all attributes.
176
+ # @return [Fixnum] Hash code
177
+ def hash
178
+ [fee, investment_type, price, quantity, settle_date, ticker, ticker_name, trade_signal, value].hash
179
+ end
180
+
181
+ # Builds the object from hash
182
+ # @param [Hash] attributes Model attributes in the form of hash
183
+ # @return [Object] Returns the model itself
184
+ def build_from_hash(attributes)
185
+ self.class.swagger_types.each_pair do |key, type|
186
+ if type =~ /\AArray<(.*)>/i
187
+ # check to ensure the input is an array given that the attribute
188
+ # is documented as an array but the input is not
189
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
190
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
191
+ end
192
+ elsif !attributes[self.class.attribute_map[key]].nil?
193
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
194
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
195
+ end
196
+
197
+ self
198
+ end
199
+
200
+ # Deserializes the data based on type
201
+ # @param string type Data type
202
+ # @param string value Value to be deserialized
203
+ # @return [Object] Deserialized data
204
+ def _deserialize(type, value)
205
+ case type.to_sym
206
+ when :DateTime
207
+ value
208
+ when :Date
209
+ value
210
+ when :String
211
+ value.to_s
212
+ when :Integer
213
+ value.to_i
214
+ when :Float
215
+ value.to_f
216
+ when :BOOLEAN
217
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
218
+ true
219
+ else
220
+ false
221
+ end
222
+ when :Object
223
+ # generic object (usually a Hash), return directly
224
+ value
225
+ when /\AArray<(?<inner_type>.+)>\z/
226
+ inner_type = Regexp.last_match[:inner_type]
227
+ value.map { |v| _deserialize(inner_type, v) }
228
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
229
+ k_type = Regexp.last_match[:k_type]
230
+ v_type = Regexp.last_match[:v_type]
231
+ {}.tap do |hash|
232
+ value.each do |k, v|
233
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
234
+ end
235
+ end
236
+ else # model
237
+ temp_model = NucleusApi.const_get(type).new
238
+ temp_model.build_from_hash(value)
239
+ end
240
+ end
241
+ # Returns the string representation of the object
242
+ # @return [String] String presentation of the object
243
+ def to_s
244
+ to_hash.to_s
245
+ end
246
+
247
+ # to_body is an alias to to_hash (backward compatibility)
248
+ # @return [Hash] Returns the object in the form of hash
249
+ def to_body
250
+ to_hash
251
+ end
252
+
253
+ # Returns the object in the form of hash
254
+ # @return [Hash] Returns the object in the form of hash
255
+ def to_hash
256
+ hash = {}
257
+ self.class.attribute_map.each_pair do |attr, param|
258
+ value = self.send(attr)
259
+ hash[param] = _to_hash(value)
260
+ end
261
+ hash
262
+ end
263
+
264
+ # Outputs non-array value in the form of hash
265
+ # For object, use to_hash. Otherwise, just return the value
266
+ # @param [Object] value Any valid value
267
+ # @return [Hash] Returns the value in the form of hash
268
+ def _to_hash(value)
269
+ if value.is_a?(Array)
270
+ value.compact.map { |v| _to_hash(v) }
271
+ elsif value.is_a?(Hash)
272
+ {}.tap do |hash|
273
+ value.each { |k, v| hash[k] = _to_hash(v) }
274
+ end
275
+ elsif value.respond_to? :to_hash
276
+ value.to_hash
277
+ else
278
+ value
279
+ end
280
+ end
281
+
282
+ end
283
+ end
@@ -0,0 +1,452 @@
1
+ =begin
2
+ #Hydrogen Nucleus API
3
+
4
+ #The Hydrogen Nucleus API
5
+
6
+ OpenAPI spec version: 1.8.0
7
+ Contact: info@hydrogenplatform.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.18
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module NucleusApi
16
+ # Invoice Object
17
+ class Invoice
18
+ # client_id
19
+ attr_accessor :client_id
20
+
21
+ attr_accessor :create_date
22
+
23
+ # currency_code
24
+ attr_accessor :currency_code
25
+
26
+ # invoice_number
27
+ attr_accessor :customer_id
28
+
29
+ # department
30
+ attr_accessor :department
31
+
32
+ # description
33
+ attr_accessor :description
34
+
35
+ # document_id
36
+ attr_accessor :document_id
37
+
38
+ # due_date
39
+ attr_accessor :due_date
40
+
41
+ attr_accessor :id
42
+
43
+ # invoice_date
44
+ attr_accessor :invoice_date
45
+
46
+ # invoice_name
47
+ attr_accessor :invoice_name
48
+
49
+ # invoice_number
50
+ attr_accessor :invoice_number
51
+
52
+ # is_active
53
+ attr_accessor :is_active
54
+
55
+ # lineItems
56
+ attr_accessor :line_items
57
+
58
+ attr_accessor :metadata
59
+
60
+ # paymentInstructions
61
+ attr_accessor :payment_instructions
62
+
63
+ # paymentTerms
64
+ attr_accessor :payment_terms
65
+
66
+ attr_accessor :secondary_id
67
+
68
+ # status
69
+ attr_accessor :status
70
+
71
+ # totalAmount
72
+ attr_accessor :total_amount
73
+
74
+ # totalDiscount
75
+ attr_accessor :total_discount
76
+
77
+ # totalDue
78
+ attr_accessor :total_due
79
+
80
+ # totalSubtotal
81
+ attr_accessor :total_subtotal
82
+
83
+ # totalTax
84
+ attr_accessor :total_tax
85
+
86
+ attr_accessor :update_date
87
+
88
+ # Attribute mapping from ruby-style variable name to JSON key.
89
+ def self.attribute_map
90
+ {
91
+ :'client_id' => :'client_id',
92
+ :'create_date' => :'create_date',
93
+ :'currency_code' => :'currency_code',
94
+ :'customer_id' => :'customer_id',
95
+ :'department' => :'department',
96
+ :'description' => :'description',
97
+ :'document_id' => :'document_id',
98
+ :'due_date' => :'due_date',
99
+ :'id' => :'id',
100
+ :'invoice_date' => :'invoice_date',
101
+ :'invoice_name' => :'invoice_name',
102
+ :'invoice_number' => :'invoice_number',
103
+ :'is_active' => :'is_active',
104
+ :'line_items' => :'line_items',
105
+ :'metadata' => :'metadata',
106
+ :'payment_instructions' => :'payment_instructions',
107
+ :'payment_terms' => :'payment_terms',
108
+ :'secondary_id' => :'secondary_id',
109
+ :'status' => :'status',
110
+ :'total_amount' => :'total_amount',
111
+ :'total_discount' => :'total_discount',
112
+ :'total_due' => :'total_due',
113
+ :'total_subtotal' => :'total_subtotal',
114
+ :'total_tax' => :'total_tax',
115
+ :'update_date' => :'update_date'
116
+ }
117
+ end
118
+
119
+ # Attribute type mapping.
120
+ def self.swagger_types
121
+ {
122
+ :'client_id' => :'String',
123
+ :'create_date' => :'DateTime',
124
+ :'currency_code' => :'String',
125
+ :'customer_id' => :'String',
126
+ :'department' => :'String',
127
+ :'description' => :'String',
128
+ :'document_id' => :'String',
129
+ :'due_date' => :'DateTime',
130
+ :'id' => :'String',
131
+ :'invoice_date' => :'Date',
132
+ :'invoice_name' => :'String',
133
+ :'invoice_number' => :'String',
134
+ :'is_active' => :'BOOLEAN',
135
+ :'line_items' => :'Array<LineItems>',
136
+ :'metadata' => :'Hash<String, String>',
137
+ :'payment_instructions' => :'String',
138
+ :'payment_terms' => :'String',
139
+ :'secondary_id' => :'String',
140
+ :'status' => :'String',
141
+ :'total_amount' => :'Float',
142
+ :'total_discount' => :'Float',
143
+ :'total_due' => :'Float',
144
+ :'total_subtotal' => :'Float',
145
+ :'total_tax' => :'Float',
146
+ :'update_date' => :'DateTime'
147
+ }
148
+ end
149
+
150
+ # Initializes the object
151
+ # @param [Hash] attributes Model attributes in the form of hash
152
+ def initialize(attributes = {})
153
+ return unless attributes.is_a?(Hash)
154
+
155
+ # convert string to symbol for hash key
156
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
157
+
158
+ if attributes.has_key?(:'client_id')
159
+ self.client_id = attributes[:'client_id']
160
+ end
161
+
162
+ if attributes.has_key?(:'create_date')
163
+ self.create_date = attributes[:'create_date']
164
+ end
165
+
166
+ if attributes.has_key?(:'currency_code')
167
+ self.currency_code = attributes[:'currency_code']
168
+ end
169
+
170
+ if attributes.has_key?(:'customer_id')
171
+ self.customer_id = attributes[:'customer_id']
172
+ end
173
+
174
+ if attributes.has_key?(:'department')
175
+ self.department = attributes[:'department']
176
+ end
177
+
178
+ if attributes.has_key?(:'description')
179
+ self.description = attributes[:'description']
180
+ end
181
+
182
+ if attributes.has_key?(:'document_id')
183
+ self.document_id = attributes[:'document_id']
184
+ end
185
+
186
+ if attributes.has_key?(:'due_date')
187
+ self.due_date = attributes[:'due_date']
188
+ end
189
+
190
+ if attributes.has_key?(:'id')
191
+ self.id = attributes[:'id']
192
+ end
193
+
194
+ if attributes.has_key?(:'invoice_date')
195
+ self.invoice_date = attributes[:'invoice_date']
196
+ end
197
+
198
+ if attributes.has_key?(:'invoice_name')
199
+ self.invoice_name = attributes[:'invoice_name']
200
+ end
201
+
202
+ if attributes.has_key?(:'invoice_number')
203
+ self.invoice_number = attributes[:'invoice_number']
204
+ end
205
+
206
+ if attributes.has_key?(:'is_active')
207
+ self.is_active = attributes[:'is_active']
208
+ end
209
+
210
+ if attributes.has_key?(:'line_items')
211
+ if (value = attributes[:'line_items']).is_a?(Array)
212
+ self.line_items = value
213
+ end
214
+ end
215
+
216
+ if attributes.has_key?(:'metadata')
217
+ if (value = attributes[:'metadata']).is_a?(Hash)
218
+ self.metadata = value
219
+ end
220
+ end
221
+
222
+ if attributes.has_key?(:'payment_instructions')
223
+ self.payment_instructions = attributes[:'payment_instructions']
224
+ end
225
+
226
+ if attributes.has_key?(:'payment_terms')
227
+ self.payment_terms = attributes[:'payment_terms']
228
+ end
229
+
230
+ if attributes.has_key?(:'secondary_id')
231
+ self.secondary_id = attributes[:'secondary_id']
232
+ end
233
+
234
+ if attributes.has_key?(:'status')
235
+ self.status = attributes[:'status']
236
+ end
237
+
238
+ if attributes.has_key?(:'total_amount')
239
+ self.total_amount = attributes[:'total_amount']
240
+ end
241
+
242
+ if attributes.has_key?(:'total_discount')
243
+ self.total_discount = attributes[:'total_discount']
244
+ end
245
+
246
+ if attributes.has_key?(:'total_due')
247
+ self.total_due = attributes[:'total_due']
248
+ end
249
+
250
+ if attributes.has_key?(:'total_subtotal')
251
+ self.total_subtotal = attributes[:'total_subtotal']
252
+ end
253
+
254
+ if attributes.has_key?(:'total_tax')
255
+ self.total_tax = attributes[:'total_tax']
256
+ end
257
+
258
+ if attributes.has_key?(:'update_date')
259
+ self.update_date = attributes[:'update_date']
260
+ end
261
+ end
262
+
263
+ # Show invalid properties with the reasons. Usually used together with valid?
264
+ # @return Array for valid properties with the reasons
265
+ def list_invalid_properties
266
+ invalid_properties = Array.new
267
+ if @currency_code.nil?
268
+ invalid_properties.push('invalid value for "currency_code", currency_code cannot be nil.')
269
+ end
270
+
271
+ if @customer_id.nil?
272
+ invalid_properties.push('invalid value for "customer_id", customer_id cannot be nil.')
273
+ end
274
+
275
+ if @due_date.nil?
276
+ invalid_properties.push('invalid value for "due_date", due_date cannot be nil.')
277
+ end
278
+
279
+ if @invoice_date.nil?
280
+ invalid_properties.push('invalid value for "invoice_date", invoice_date cannot be nil.')
281
+ end
282
+
283
+ if @invoice_number.nil?
284
+ invalid_properties.push('invalid value for "invoice_number", invoice_number cannot be nil.')
285
+ end
286
+
287
+ if @total_amount.nil?
288
+ invalid_properties.push('invalid value for "total_amount", total_amount cannot be nil.')
289
+ end
290
+
291
+ invalid_properties
292
+ end
293
+
294
+ # Check to see if the all the properties in the model are valid
295
+ # @return true if the model is valid
296
+ def valid?
297
+ return false if @currency_code.nil?
298
+ return false if @customer_id.nil?
299
+ return false if @due_date.nil?
300
+ return false if @invoice_date.nil?
301
+ return false if @invoice_number.nil?
302
+ return false if @total_amount.nil?
303
+ true
304
+ end
305
+
306
+ # Checks equality by comparing each attribute.
307
+ # @param [Object] Object to be compared
308
+ def ==(o)
309
+ return true if self.equal?(o)
310
+ self.class == o.class &&
311
+ client_id == o.client_id &&
312
+ create_date == o.create_date &&
313
+ currency_code == o.currency_code &&
314
+ customer_id == o.customer_id &&
315
+ department == o.department &&
316
+ description == o.description &&
317
+ document_id == o.document_id &&
318
+ due_date == o.due_date &&
319
+ id == o.id &&
320
+ invoice_date == o.invoice_date &&
321
+ invoice_name == o.invoice_name &&
322
+ invoice_number == o.invoice_number &&
323
+ is_active == o.is_active &&
324
+ line_items == o.line_items &&
325
+ metadata == o.metadata &&
326
+ payment_instructions == o.payment_instructions &&
327
+ payment_terms == o.payment_terms &&
328
+ secondary_id == o.secondary_id &&
329
+ status == o.status &&
330
+ total_amount == o.total_amount &&
331
+ total_discount == o.total_discount &&
332
+ total_due == o.total_due &&
333
+ total_subtotal == o.total_subtotal &&
334
+ total_tax == o.total_tax &&
335
+ update_date == o.update_date
336
+ end
337
+
338
+ # @see the `==` method
339
+ # @param [Object] Object to be compared
340
+ def eql?(o)
341
+ self == o
342
+ end
343
+
344
+ # Calculates hash code according to all attributes.
345
+ # @return [Fixnum] Hash code
346
+ def hash
347
+ [client_id, create_date, currency_code, customer_id, department, description, document_id, due_date, id, invoice_date, invoice_name, invoice_number, is_active, line_items, metadata, payment_instructions, payment_terms, secondary_id, status, total_amount, total_discount, total_due, total_subtotal, total_tax, update_date].hash
348
+ end
349
+
350
+ # Builds the object from hash
351
+ # @param [Hash] attributes Model attributes in the form of hash
352
+ # @return [Object] Returns the model itself
353
+ def build_from_hash(attributes)
354
+ self.class.swagger_types.each_pair do |key, type|
355
+ if type =~ /\AArray<(.*)>/i
356
+ # check to ensure the input is an array given that the attribute
357
+ # is documented as an array but the input is not
358
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
359
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
360
+ end
361
+ elsif !attributes[self.class.attribute_map[key]].nil?
362
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
363
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
364
+ end
365
+
366
+ self
367
+ end
368
+
369
+ # Deserializes the data based on type
370
+ # @param string type Data type
371
+ # @param string value Value to be deserialized
372
+ # @return [Object] Deserialized data
373
+ def _deserialize(type, value)
374
+ case type.to_sym
375
+ when :DateTime
376
+ value
377
+ when :Date
378
+ value
379
+ when :String
380
+ value.to_s
381
+ when :Integer
382
+ value.to_i
383
+ when :Float
384
+ value.to_f
385
+ when :BOOLEAN
386
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
387
+ true
388
+ else
389
+ false
390
+ end
391
+ when :Object
392
+ # generic object (usually a Hash), return directly
393
+ value
394
+ when /\AArray<(?<inner_type>.+)>\z/
395
+ inner_type = Regexp.last_match[:inner_type]
396
+ value.map { |v| _deserialize(inner_type, v) }
397
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
398
+ k_type = Regexp.last_match[:k_type]
399
+ v_type = Regexp.last_match[:v_type]
400
+ {}.tap do |hash|
401
+ value.each do |k, v|
402
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
403
+ end
404
+ end
405
+ else # model
406
+ temp_model = NucleusApi.const_get(type).new
407
+ temp_model.build_from_hash(value)
408
+ end
409
+ end
410
+ # Returns the string representation of the object
411
+ # @return [String] String presentation of the object
412
+ def to_s
413
+ to_hash.to_s
414
+ end
415
+
416
+ # to_body is an alias to to_hash (backward compatibility)
417
+ # @return [Hash] Returns the object in the form of hash
418
+ def to_body
419
+ to_hash
420
+ end
421
+
422
+ # Returns the object in the form of hash
423
+ # @return [Hash] Returns the object in the form of hash
424
+ def to_hash
425
+ hash = {}
426
+ self.class.attribute_map.each_pair do |attr, param|
427
+ value = self.send(attr)
428
+ hash[param] = _to_hash(value)
429
+ end
430
+ hash
431
+ end
432
+
433
+ # Outputs non-array value in the form of hash
434
+ # For object, use to_hash. Otherwise, just return the value
435
+ # @param [Object] value Any valid value
436
+ # @return [Hash] Returns the value in the form of hash
437
+ def _to_hash(value)
438
+ if value.is_a?(Array)
439
+ value.compact.map { |v| _to_hash(v) }
440
+ elsif value.is_a?(Hash)
441
+ {}.tap do |hash|
442
+ value.each { |k, v| hash[k] = _to_hash(v) }
443
+ end
444
+ elsif value.respond_to? :to_hash
445
+ value.to_hash
446
+ else
447
+ value
448
+ end
449
+ end
450
+
451
+ end
452
+ end