growwer 1.0.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 (383) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +306 -0
  4. data/Rakefile +10 -0
  5. data/docs/AccountApi.md +213 -0
  6. data/docs/Balance.md +20 -0
  7. data/docs/BuyerMoneyApi.md +362 -0
  8. data/docs/CatalogueApi.md +731 -0
  9. data/docs/CatalogueMedia.md +46 -0
  10. data/docs/CatalogueMediaFlashOffer.md +20 -0
  11. data/docs/CatalogueMediaMetrics.md +26 -0
  12. data/docs/CatalogueOffer.md +24 -0
  13. data/docs/CatalogueOfferOrNull.md +24 -0
  14. data/docs/CataloguePostOffer.md +30 -0
  15. data/docs/CataloguePostOfferAllOfExtras.md +20 -0
  16. data/docs/CataloguePostOfferAllOfExtrasSensitiveTopic.md +20 -0
  17. data/docs/CodeName.md +20 -0
  18. data/docs/CountSavedFilterMedias200Response.md +18 -0
  19. data/docs/CreateProjectRequest.md +32 -0
  20. data/docs/CreateSavedFilterRequest.md +22 -0
  21. data/docs/Error.md +24 -0
  22. data/docs/FilesApi.md +79 -0
  23. data/docs/GetBuyerWallet200Response.md +20 -0
  24. data/docs/GetMe200Response.md +34 -0
  25. data/docs/GetMe200ResponseBuyer.md +18 -0
  26. data/docs/GetMe200ResponseCatalogue.md +18 -0
  27. data/docs/GetMe200ResponseManagedService.md +18 -0
  28. data/docs/GetMe200ResponseSeller.md +24 -0
  29. data/docs/GetSellerWallet200Response.md +20 -0
  30. data/docs/GetVocabulary200Response.md +28 -0
  31. data/docs/GetVocabulary200ResponseTopicsInner.md +20 -0
  32. data/docs/Invoice.md +24 -0
  33. data/docs/LinkAdditionOrderBriefing.md +22 -0
  34. data/docs/LinkAdditionOrderBriefingRequest.md +22 -0
  35. data/docs/ListBuyerTransactions200Response.md +20 -0
  36. data/docs/ListFlashOffers200Response.md +20 -0
  37. data/docs/ListInvoices200Response.md +20 -0
  38. data/docs/ListManagedServiceCampaigns200Response.md +20 -0
  39. data/docs/ListManagedServiceProposals200Response.md +20 -0
  40. data/docs/ListOrders200Response.md +20 -0
  41. data/docs/ListProjects200Response.md +20 -0
  42. data/docs/ListSavedFilters200Response.md +20 -0
  43. data/docs/ListSellerMedias200Response.md +20 -0
  44. data/docs/ListSellerOrders200Response.md +20 -0
  45. data/docs/ListSellerTransactions200Response.md +20 -0
  46. data/docs/ListWithdrawals200Response.md +20 -0
  47. data/docs/ManagedServiceCampaign.md +40 -0
  48. data/docs/ManagedServiceCampaignProject.md +20 -0
  49. data/docs/ManagedServiceCampaignProposalCounts.md +26 -0
  50. data/docs/ManagedServiceCampaignStrategy.md +26 -0
  51. data/docs/ManagedServiceProposal.md +40 -0
  52. data/docs/ManagedServiceProposalBriefing.md +24 -0
  53. data/docs/ManagedServiceProposalBriefingLinksInner.md +22 -0
  54. data/docs/ManagedServiceProposalMedia.md +24 -0
  55. data/docs/ManagedServiceProposalReview.md +20 -0
  56. data/docs/ManagedServiceProposalReviewRequest.md +18 -0
  57. data/docs/ManagedServiceProposalReviewRequestReviewsInner.md +22 -0
  58. data/docs/ManagedServiceProposalsEstimate.md +28 -0
  59. data/docs/ManagedServiceProposalsEstimateRequest.md +18 -0
  60. data/docs/ManagedServiceRequest.md +28 -0
  61. data/docs/ManagedServiceRequestSent.md +18 -0
  62. data/docs/ManagedServicesApi.md +593 -0
  63. data/docs/Money.md +20 -0
  64. data/docs/MoneyOrNull.md +20 -0
  65. data/docs/Order.md +48 -0
  66. data/docs/OrderActionReason.md +18 -0
  67. data/docs/OrderBriefing.md +49 -0
  68. data/docs/OrderChannel.md +18 -0
  69. data/docs/OrderCreateRequest.md +32 -0
  70. data/docs/OrderDelivery.md +20 -0
  71. data/docs/OrderDraft.md +22 -0
  72. data/docs/OrderEstimate.md +24 -0
  73. data/docs/OrderEstimateRequest.md +30 -0
  74. data/docs/OrderEstimateRequestBriefing.md +49 -0
  75. data/docs/OrderLink.md +22 -0
  76. data/docs/OrderLinkRequest.md +22 -0
  77. data/docs/OrderMedia.md +20 -0
  78. data/docs/OrderProject.md +20 -0
  79. data/docs/OrderStateHistoryInner.md +22 -0
  80. data/docs/OrderStateHistoryInnerReason.md +20 -0
  81. data/docs/OrdersApi.md +809 -0
  82. data/docs/PostOrderBriefing.md +28 -0
  83. data/docs/PostOrderBriefingRequest.md +24 -0
  84. data/docs/Project.md +38 -0
  85. data/docs/ProjectCatalogueMedia.md +48 -0
  86. data/docs/ProjectCatalogueMediaAllOfProject.md +28 -0
  87. data/docs/ProjectsApi.md +368 -0
  88. data/docs/PutSellerHoliday200Response.md +20 -0
  89. data/docs/PutSellerHolidayRequest.md +20 -0
  90. data/docs/RequestMedias201Response.md +18 -0
  91. data/docs/RequestMediasRequest.md +18 -0
  92. data/docs/SavedFilter.md +26 -0
  93. data/docs/SavedFilterNotifications.md +20 -0
  94. data/docs/SavedFiltersApi.md +296 -0
  95. data/docs/SellerFees.md +20 -0
  96. data/docs/SellerFeesOrNull.md +20 -0
  97. data/docs/SellerMedia.md +54 -0
  98. data/docs/SellerMediaFlashOffer.md +20 -0
  99. data/docs/SellerMediaLinkAdditionOffer.md +18 -0
  100. data/docs/SellerMediaLinkAdditionOfferPricingOptionsInner.md +22 -0
  101. data/docs/SellerMediaPostOffer.md +20 -0
  102. data/docs/SellerMediaPostOfferPricingOptionsInner.md +24 -0
  103. data/docs/SellerMediasApi.md +301 -0
  104. data/docs/SellerMoneyApi.md +364 -0
  105. data/docs/SellerOrder.md +50 -0
  106. data/docs/SellerOrderBriefing.md +49 -0
  107. data/docs/SellerOrderChannel.md +20 -0
  108. data/docs/SellerOrderDraft.md +20 -0
  109. data/docs/SellerOrderDraftFile.md +18 -0
  110. data/docs/SellerOrderPostDelivery.md +20 -0
  111. data/docs/SellerOrderProject.md +18 -0
  112. data/docs/SellerOrderRefutation.md +18 -0
  113. data/docs/SellerOrderRejection.md +18 -0
  114. data/docs/SellerOrderRejectionReason.md +20 -0
  115. data/docs/SellerOrdersApi.md +893 -0
  116. data/docs/SellerPostOrderBriefing.md +30 -0
  117. data/docs/SellerTransaction.md +38 -0
  118. data/docs/Transaction.md +40 -0
  119. data/docs/UpdateProjectRequest.md +30 -0
  120. data/docs/UpdateSellerMediaRequest.md +22 -0
  121. data/docs/UpdateSellerMediaRequestExtraServicesInner.md +20 -0
  122. data/docs/UpdateSellerMediaRequestLinkAdditionOffer.md +18 -0
  123. data/docs/UpdateSellerMediaRequestLinkAdditionOfferPricingOptionsInner.md +20 -0
  124. data/docs/UpdateSellerMediaRequestPostOffer.md +18 -0
  125. data/docs/UpdateSellerMediaRequestPostOfferPricingOptionsInner.md +22 -0
  126. data/docs/UploadFile201Response.md +24 -0
  127. data/docs/Withdrawal.md +28 -0
  128. data/git_push.sh +57 -0
  129. data/growwer.gemspec +41 -0
  130. data/lib/growwer/api/account_api.rb +215 -0
  131. data/lib/growwer/api/buyer_money_api.rb +355 -0
  132. data/lib/growwer/api/catalogue_api.rb +881 -0
  133. data/lib/growwer/api/files_api.rb +102 -0
  134. data/lib/growwer/api/managed_services_api.rb +625 -0
  135. data/lib/growwer/api/orders_api.rb +855 -0
  136. data/lib/growwer/api/projects_api.rb +398 -0
  137. data/lib/growwer/api/saved_filters_api.rb +319 -0
  138. data/lib/growwer/api/seller_medias_api.rb +329 -0
  139. data/lib/growwer/api/seller_money_api.rb +358 -0
  140. data/lib/growwer/api/seller_orders_api.rb +963 -0
  141. data/lib/growwer/api_client.rb +441 -0
  142. data/lib/growwer/api_error.rb +58 -0
  143. data/lib/growwer/api_model_base.rb +88 -0
  144. data/lib/growwer/configuration.rb +392 -0
  145. data/lib/growwer/models/balance.rb +192 -0
  146. data/lib/growwer/models/catalogue_media.rb +491 -0
  147. data/lib/growwer/models/catalogue_media_flash_offer.rb +191 -0
  148. data/lib/growwer/models/catalogue_media_metrics.rb +200 -0
  149. data/lib/growwer/models/catalogue_offer.rb +254 -0
  150. data/lib/growwer/models/catalogue_offer_or_null.rb +254 -0
  151. data/lib/growwer/models/catalogue_post_offer.rb +333 -0
  152. data/lib/growwer/models/catalogue_post_offer_all_of_extras.rb +177 -0
  153. data/lib/growwer/models/catalogue_post_offer_all_of_extras_sensitive_topic.rb +178 -0
  154. data/lib/growwer/models/code_name.rb +190 -0
  155. data/lib/growwer/models/count_saved_filter_medias200_response.rb +173 -0
  156. data/lib/growwer/models/create_project_request.rb +402 -0
  157. data/lib/growwer/models/create_saved_filter_request.rb +247 -0
  158. data/lib/growwer/models/error.rb +231 -0
  159. data/lib/growwer/models/get_buyer_wallet200_response.rb +191 -0
  160. data/lib/growwer/models/get_me200_response.rb +373 -0
  161. data/lib/growwer/models/get_me200_response_buyer.rb +164 -0
  162. data/lib/growwer/models/get_me200_response_catalogue.rb +165 -0
  163. data/lib/growwer/models/get_me200_response_managed_service.rb +165 -0
  164. data/lib/growwer/models/get_me200_response_seller.rb +231 -0
  165. data/lib/growwer/models/get_seller_wallet200_response.rb +191 -0
  166. data/lib/growwer/models/get_vocabulary200_response.rb +311 -0
  167. data/lib/growwer/models/get_vocabulary200_response_topics_inner.rb +190 -0
  168. data/lib/growwer/models/invoice.rb +243 -0
  169. data/lib/growwer/models/link_addition_order_briefing.rb +204 -0
  170. data/lib/growwer/models/link_addition_order_briefing_request.rb +201 -0
  171. data/lib/growwer/models/list_buyer_transactions200_response.rb +192 -0
  172. data/lib/growwer/models/list_flash_offers200_response.rb +192 -0
  173. data/lib/growwer/models/list_invoices200_response.rb +192 -0
  174. data/lib/growwer/models/list_managed_service_campaigns200_response.rb +192 -0
  175. data/lib/growwer/models/list_managed_service_proposals200_response.rb +192 -0
  176. data/lib/growwer/models/list_orders200_response.rb +192 -0
  177. data/lib/growwer/models/list_projects200_response.rb +192 -0
  178. data/lib/growwer/models/list_saved_filters200_response.rb +192 -0
  179. data/lib/growwer/models/list_seller_medias200_response.rb +192 -0
  180. data/lib/growwer/models/list_seller_orders200_response.rb +192 -0
  181. data/lib/growwer/models/list_seller_transactions200_response.rb +192 -0
  182. data/lib/growwer/models/list_withdrawals200_response.rb +192 -0
  183. data/lib/growwer/models/managed_service_campaign.rb +451 -0
  184. data/lib/growwer/models/managed_service_campaign_project.rb +190 -0
  185. data/lib/growwer/models/managed_service_campaign_proposal_counts.rb +269 -0
  186. data/lib/growwer/models/managed_service_campaign_strategy.rb +300 -0
  187. data/lib/growwer/models/managed_service_proposal.rb +428 -0
  188. data/lib/growwer/models/managed_service_proposal_briefing.rb +244 -0
  189. data/lib/growwer/models/managed_service_proposal_briefing_links_inner.rb +226 -0
  190. data/lib/growwer/models/managed_service_proposal_media.rb +214 -0
  191. data/lib/growwer/models/managed_service_proposal_review.rb +193 -0
  192. data/lib/growwer/models/managed_service_proposal_review_request.rb +176 -0
  193. data/lib/growwer/models/managed_service_proposal_review_request_reviews_inner.rb +240 -0
  194. data/lib/growwer/models/managed_service_proposals_estimate.rb +300 -0
  195. data/lib/growwer/models/managed_service_proposals_estimate_request.rb +150 -0
  196. data/lib/growwer/models/managed_service_request.rb +331 -0
  197. data/lib/growwer/models/managed_service_request_sent.rb +188 -0
  198. data/lib/growwer/models/money.rb +192 -0
  199. data/lib/growwer/models/money_or_null.rb +192 -0
  200. data/lib/growwer/models/order.rb +541 -0
  201. data/lib/growwer/models/order_action_reason.rb +183 -0
  202. data/lib/growwer/models/order_briefing.rb +102 -0
  203. data/lib/growwer/models/order_channel.rb +189 -0
  204. data/lib/growwer/models/order_create_request.rb +333 -0
  205. data/lib/growwer/models/order_delivery.rb +179 -0
  206. data/lib/growwer/models/order_draft.rb +220 -0
  207. data/lib/growwer/models/order_estimate.rb +246 -0
  208. data/lib/growwer/models/order_estimate_request.rb +299 -0
  209. data/lib/growwer/models/order_estimate_request_briefing.rb +102 -0
  210. data/lib/growwer/models/order_link.rb +214 -0
  211. data/lib/growwer/models/order_link_request.rb +209 -0
  212. data/lib/growwer/models/order_media.rb +178 -0
  213. data/lib/growwer/models/order_project.rb +178 -0
  214. data/lib/growwer/models/order_state_history_inner.rb +202 -0
  215. data/lib/growwer/models/order_state_history_inner_reason.rb +200 -0
  216. data/lib/growwer/models/post_order_briefing.rb +285 -0
  217. data/lib/growwer/models/post_order_briefing_request.rb +220 -0
  218. data/lib/growwer/models/project.rb +437 -0
  219. data/lib/growwer/models/project_catalogue_media.rb +524 -0
  220. data/lib/growwer/models/project_catalogue_media_all_of_project.rb +298 -0
  221. data/lib/growwer/models/put_seller_holiday200_response.rb +177 -0
  222. data/lib/growwer/models/put_seller_holiday_request.rb +174 -0
  223. data/lib/growwer/models/request_medias201_response.rb +166 -0
  224. data/lib/growwer/models/request_medias_request.rb +167 -0
  225. data/lib/growwer/models/saved_filter.rb +269 -0
  226. data/lib/growwer/models/saved_filter_notifications.rb +211 -0
  227. data/lib/growwer/models/seller_fees.rb +164 -0
  228. data/lib/growwer/models/seller_fees_or_null.rb +164 -0
  229. data/lib/growwer/models/seller_media.rb +573 -0
  230. data/lib/growwer/models/seller_media_flash_offer.rb +191 -0
  231. data/lib/growwer/models/seller_media_link_addition_offer.rb +167 -0
  232. data/lib/growwer/models/seller_media_link_addition_offer_pricing_options_inner.rb +228 -0
  233. data/lib/growwer/models/seller_media_post_offer.rb +195 -0
  234. data/lib/growwer/models/seller_media_post_offer_pricing_options_inner.rb +234 -0
  235. data/lib/growwer/models/seller_order.rb +563 -0
  236. data/lib/growwer/models/seller_order_briefing.rb +102 -0
  237. data/lib/growwer/models/seller_order_channel.rb +214 -0
  238. data/lib/growwer/models/seller_order_draft.rb +193 -0
  239. data/lib/growwer/models/seller_order_draft_file.rb +165 -0
  240. data/lib/growwer/models/seller_order_post_delivery.rb +193 -0
  241. data/lib/growwer/models/seller_order_project.rb +165 -0
  242. data/lib/growwer/models/seller_order_refutation.rb +183 -0
  243. data/lib/growwer/models/seller_order_rejection.rb +164 -0
  244. data/lib/growwer/models/seller_order_rejection_reason.rb +224 -0
  245. data/lib/growwer/models/seller_post_order_briefing.rb +314 -0
  246. data/lib/growwer/models/seller_transaction.rb +415 -0
  247. data/lib/growwer/models/transaction.rb +427 -0
  248. data/lib/growwer/models/update_project_request.rb +339 -0
  249. data/lib/growwer/models/update_seller_media_request.rb +168 -0
  250. data/lib/growwer/models/update_seller_media_request_extra_services_inner.rb +215 -0
  251. data/lib/growwer/models/update_seller_media_request_link_addition_offer.rb +166 -0
  252. data/lib/growwer/models/update_seller_media_request_link_addition_offer_pricing_options_inner.rb +215 -0
  253. data/lib/growwer/models/update_seller_media_request_post_offer.rb +175 -0
  254. data/lib/growwer/models/update_seller_media_request_post_offer_pricing_options_inner.rb +210 -0
  255. data/lib/growwer/models/upload_file201_response.rb +244 -0
  256. data/lib/growwer/models/withdrawal.rb +322 -0
  257. data/lib/growwer/version.rb +15 -0
  258. data/lib/growwer.rb +163 -0
  259. data/spec/api/account_api_spec.rb +70 -0
  260. data/spec/api/buyer_money_api_spec.rb +96 -0
  261. data/spec/api/catalogue_api_spec.rb +213 -0
  262. data/spec/api/files_api_spec.rb +48 -0
  263. data/spec/api/managed_services_api_spec.rb +140 -0
  264. data/spec/api/orders_api_spec.rb +182 -0
  265. data/spec/api/projects_api_spec.rb +100 -0
  266. data/spec/api/saved_filters_api_spec.rb +88 -0
  267. data/spec/api/seller_medias_api_spec.rb +89 -0
  268. data/spec/api/seller_money_api_spec.rb +97 -0
  269. data/spec/api/seller_orders_api_spec.rb +199 -0
  270. data/spec/models/balance_spec.rb +42 -0
  271. data/spec/models/catalogue_media_flash_offer_spec.rb +42 -0
  272. data/spec/models/catalogue_media_metrics_spec.rb +60 -0
  273. data/spec/models/catalogue_media_spec.rb +124 -0
  274. data/spec/models/catalogue_offer_or_null_spec.rb +58 -0
  275. data/spec/models/catalogue_offer_spec.rb +58 -0
  276. data/spec/models/catalogue_post_offer_all_of_extras_sensitive_topic_spec.rb +42 -0
  277. data/spec/models/catalogue_post_offer_all_of_extras_spec.rb +42 -0
  278. data/spec/models/catalogue_post_offer_spec.rb +80 -0
  279. data/spec/models/code_name_spec.rb +42 -0
  280. data/spec/models/count_saved_filter_medias200_response_spec.rb +36 -0
  281. data/spec/models/create_project_request_spec.rb +82 -0
  282. data/spec/models/create_saved_filter_request_spec.rb +52 -0
  283. data/spec/models/error_spec.rb +54 -0
  284. data/spec/models/get_buyer_wallet200_response_spec.rb +42 -0
  285. data/spec/models/get_me200_response_buyer_spec.rb +36 -0
  286. data/spec/models/get_me200_response_catalogue_spec.rb +36 -0
  287. data/spec/models/get_me200_response_managed_service_spec.rb +36 -0
  288. data/spec/models/get_me200_response_seller_spec.rb +54 -0
  289. data/spec/models/get_me200_response_spec.rb +84 -0
  290. data/spec/models/get_seller_wallet200_response_spec.rb +42 -0
  291. data/spec/models/get_vocabulary200_response_spec.rb +74 -0
  292. data/spec/models/get_vocabulary200_response_topics_inner_spec.rb +42 -0
  293. data/spec/models/invoice_spec.rb +54 -0
  294. data/spec/models/link_addition_order_briefing_request_spec.rb +48 -0
  295. data/spec/models/link_addition_order_briefing_spec.rb +48 -0
  296. data/spec/models/list_buyer_transactions200_response_spec.rb +42 -0
  297. data/spec/models/list_flash_offers200_response_spec.rb +42 -0
  298. data/spec/models/list_invoices200_response_spec.rb +42 -0
  299. data/spec/models/list_managed_service_campaigns200_response_spec.rb +42 -0
  300. data/spec/models/list_managed_service_proposals200_response_spec.rb +42 -0
  301. data/spec/models/list_orders200_response_spec.rb +42 -0
  302. data/spec/models/list_projects200_response_spec.rb +42 -0
  303. data/spec/models/list_saved_filters200_response_spec.rb +42 -0
  304. data/spec/models/list_seller_medias200_response_spec.rb +42 -0
  305. data/spec/models/list_seller_orders200_response_spec.rb +42 -0
  306. data/spec/models/list_seller_transactions200_response_spec.rb +42 -0
  307. data/spec/models/list_withdrawals200_response_spec.rb +42 -0
  308. data/spec/models/managed_service_campaign_project_spec.rb +42 -0
  309. data/spec/models/managed_service_campaign_proposal_counts_spec.rb +60 -0
  310. data/spec/models/managed_service_campaign_spec.rb +106 -0
  311. data/spec/models/managed_service_campaign_strategy_spec.rb +64 -0
  312. data/spec/models/managed_service_proposal_briefing_links_inner_spec.rb +52 -0
  313. data/spec/models/managed_service_proposal_briefing_spec.rb +54 -0
  314. data/spec/models/managed_service_proposal_media_spec.rb +54 -0
  315. data/spec/models/managed_service_proposal_review_request_reviews_inner_spec.rb +52 -0
  316. data/spec/models/managed_service_proposal_review_request_spec.rb +36 -0
  317. data/spec/models/managed_service_proposal_review_spec.rb +42 -0
  318. data/spec/models/managed_service_proposal_spec.rb +110 -0
  319. data/spec/models/managed_service_proposals_estimate_request_spec.rb +36 -0
  320. data/spec/models/managed_service_proposals_estimate_spec.rb +66 -0
  321. data/spec/models/managed_service_request_sent_spec.rb +40 -0
  322. data/spec/models/managed_service_request_spec.rb +74 -0
  323. data/spec/models/money_or_null_spec.rb +42 -0
  324. data/spec/models/money_spec.rb +42 -0
  325. data/spec/models/order_action_reason_spec.rb +36 -0
  326. data/spec/models/order_briefing_spec.rb +32 -0
  327. data/spec/models/order_channel_spec.rb +40 -0
  328. data/spec/models/order_create_request_spec.rb +82 -0
  329. data/spec/models/order_delivery_spec.rb +42 -0
  330. data/spec/models/order_draft_spec.rb +48 -0
  331. data/spec/models/order_estimate_request_briefing_spec.rb +32 -0
  332. data/spec/models/order_estimate_request_spec.rb +76 -0
  333. data/spec/models/order_estimate_spec.rb +54 -0
  334. data/spec/models/order_link_request_spec.rb +52 -0
  335. data/spec/models/order_link_spec.rb +52 -0
  336. data/spec/models/order_media_spec.rb +42 -0
  337. data/spec/models/order_project_spec.rb +42 -0
  338. data/spec/models/order_spec.rb +134 -0
  339. data/spec/models/order_state_history_inner_reason_spec.rb +46 -0
  340. data/spec/models/order_state_history_inner_spec.rb +48 -0
  341. data/spec/models/post_order_briefing_request_spec.rb +58 -0
  342. data/spec/models/post_order_briefing_spec.rb +70 -0
  343. data/spec/models/project_catalogue_media_all_of_project_spec.rb +66 -0
  344. data/spec/models/project_catalogue_media_spec.rb +130 -0
  345. data/spec/models/project_spec.rb +104 -0
  346. data/spec/models/put_seller_holiday200_response_spec.rb +42 -0
  347. data/spec/models/put_seller_holiday_request_spec.rb +42 -0
  348. data/spec/models/request_medias201_response_spec.rb +36 -0
  349. data/spec/models/request_medias_request_spec.rb +36 -0
  350. data/spec/models/saved_filter_notifications_spec.rb +46 -0
  351. data/spec/models/saved_filter_spec.rb +60 -0
  352. data/spec/models/seller_fees_or_null_spec.rb +42 -0
  353. data/spec/models/seller_fees_spec.rb +42 -0
  354. data/spec/models/seller_media_flash_offer_spec.rb +42 -0
  355. data/spec/models/seller_media_link_addition_offer_pricing_options_inner_spec.rb +52 -0
  356. data/spec/models/seller_media_link_addition_offer_spec.rb +36 -0
  357. data/spec/models/seller_media_post_offer_pricing_options_inner_spec.rb +58 -0
  358. data/spec/models/seller_media_post_offer_spec.rb +42 -0
  359. data/spec/models/seller_media_spec.rb +148 -0
  360. data/spec/models/seller_order_briefing_spec.rb +32 -0
  361. data/spec/models/seller_order_channel_spec.rb +50 -0
  362. data/spec/models/seller_order_draft_file_spec.rb +36 -0
  363. data/spec/models/seller_order_draft_spec.rb +42 -0
  364. data/spec/models/seller_order_post_delivery_spec.rb +42 -0
  365. data/spec/models/seller_order_project_spec.rb +36 -0
  366. data/spec/models/seller_order_refutation_spec.rb +36 -0
  367. data/spec/models/seller_order_rejection_reason_spec.rb +46 -0
  368. data/spec/models/seller_order_rejection_spec.rb +36 -0
  369. data/spec/models/seller_order_spec.rb +140 -0
  370. data/spec/models/seller_post_order_briefing_spec.rb +80 -0
  371. data/spec/models/seller_transaction_spec.rb +104 -0
  372. data/spec/models/transaction_spec.rb +110 -0
  373. data/spec/models/update_project_request_spec.rb +76 -0
  374. data/spec/models/update_seller_media_request_extra_services_inner_spec.rb +46 -0
  375. data/spec/models/update_seller_media_request_link_addition_offer_pricing_options_inner_spec.rb +46 -0
  376. data/spec/models/update_seller_media_request_link_addition_offer_spec.rb +36 -0
  377. data/spec/models/update_seller_media_request_post_offer_pricing_options_inner_spec.rb +52 -0
  378. data/spec/models/update_seller_media_request_post_offer_spec.rb +36 -0
  379. data/spec/models/update_seller_media_request_spec.rb +48 -0
  380. data/spec/models/upload_file201_response_spec.rb +54 -0
  381. data/spec/models/withdrawal_spec.rb +74 -0
  382. data/spec/spec_helper.rb +111 -0
  383. metadata +618 -0
@@ -0,0 +1,247 @@
1
+ =begin
2
+ #Growwer API
3
+
4
+ #The Growwer customer API. Authenticate every call with an API key created on your profile page, sent as `Authorization: Bearer <key>`. A read key can call every GET operation; writes need a read and write key and an `Idempotency-Key` header. Idempotency: use a new `Idempotency-Key` (1 to 255 printable ASCII characters without spaces) for each operation and reuse it only to retry that same operation. Keys belong to your account, not to one API key. - A successful write is stored for 30 days: a retry with the same key and the same request replays its response with `Idempotent-Replayed: true` and does nothing again. - A refused write (4xx) has no effect and releases its key: once you fix the cause, retry with the same key and the write runs. - A failed write (5xx) may have taken effect, so it is never run again under its key: a retry gets 409 `idempotency_outcome_unknown`. Check whether it took effect before retrying with a new key. - A retry while the first request is still running gets 409 `idempotency_request_in_progress`. A request still running after 5 minutes is treated as failed: a retry gets 409 `idempotency_outcome_unknown`. - The same key with a different request (method, path, query or body) gets 409 `idempotency_key_reused`. A write without the header gets 400 `idempotency_key_required`. Every response carries `X-Request-Id`. Errors share one shape, `{code, message, requestId, details?}`. Money is integer cents plus a currency code and dates are ISO-8601.
5
+
6
+ The version of the OpenAPI document: 1
7
+ Contact: support@growwer.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.24.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Growwer
17
+ class CreateSavedFilterRequest < ApiModelBase
18
+ # 1 to 255 characters.
19
+ attr_accessor :name
20
+
21
+ # At least one filter parameter of GET /projects/{id}/medias, or `source`, by name.
22
+ attr_accessor :filters
23
+
24
+ # Email new matching medias this often. Omit it for no emails.
25
+ attr_accessor :notification_frequency
26
+
27
+ class EnumAttributeValidator
28
+ attr_reader :datatype
29
+ attr_reader :allowable_values
30
+
31
+ def initialize(datatype, allowable_values)
32
+ @allowable_values = allowable_values.map do |value|
33
+ case datatype.to_s
34
+ when /Integer/i
35
+ value.to_i
36
+ when /Float/i
37
+ value.to_f
38
+ else
39
+ value
40
+ end
41
+ end
42
+ end
43
+
44
+ def valid?(value)
45
+ !value || allowable_values.include?(value)
46
+ end
47
+ end
48
+
49
+ # Attribute mapping from ruby-style variable name to JSON key.
50
+ def self.attribute_map
51
+ {
52
+ :'name' => :'name',
53
+ :'filters' => :'filters',
54
+ :'notification_frequency' => :'notificationFrequency'
55
+ }
56
+ end
57
+
58
+ # Returns attribute mapping this model knows about
59
+ def self.acceptable_attribute_map
60
+ attribute_map
61
+ end
62
+
63
+ # Returns all the JSON keys this model knows about
64
+ def self.acceptable_attributes
65
+ acceptable_attribute_map.values
66
+ end
67
+
68
+ # Attribute type mapping.
69
+ def self.openapi_types
70
+ {
71
+ :'name' => :'String',
72
+ :'filters' => :'Hash<String, Object>',
73
+ :'notification_frequency' => :'String'
74
+ }
75
+ end
76
+
77
+ # List of attributes with nullable: true
78
+ def self.openapi_nullable
79
+ Set.new([
80
+ ])
81
+ end
82
+
83
+ # Initializes the object
84
+ # @param [Hash] attributes Model attributes in the form of hash
85
+ def initialize(attributes = {})
86
+ if (!attributes.is_a?(Hash))
87
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Growwer::CreateSavedFilterRequest` initialize method"
88
+ end
89
+
90
+ # check to see if the attribute exists and convert string to symbol for hash key
91
+ acceptable_attribute_map = self.class.acceptable_attribute_map
92
+ attributes = attributes.each_with_object({}) { |(k, v), h|
93
+ if (!acceptable_attribute_map.key?(k.to_sym))
94
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Growwer::CreateSavedFilterRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
95
+ end
96
+ h[k.to_sym] = v
97
+ }
98
+
99
+ if attributes.key?(:'name')
100
+ self.name = attributes[:'name']
101
+ else
102
+ self.name = nil
103
+ end
104
+
105
+ if attributes.key?(:'filters')
106
+ if (value = attributes[:'filters']).is_a?(Hash)
107
+ self.filters = value
108
+ end
109
+ else
110
+ self.filters = nil
111
+ end
112
+
113
+ if attributes.key?(:'notification_frequency')
114
+ self.notification_frequency = attributes[:'notification_frequency']
115
+ end
116
+ end
117
+
118
+ # Show invalid properties with the reasons. Usually used together with valid?
119
+ # @return Array for valid properties with the reasons
120
+ def list_invalid_properties
121
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
122
+ invalid_properties = Array.new
123
+ if @name.nil?
124
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
125
+ end
126
+
127
+ if @name.to_s.length > 255
128
+ invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 255.')
129
+ end
130
+
131
+ if @filters.nil?
132
+ invalid_properties.push('invalid value for "filters", filters cannot be nil.')
133
+ end
134
+
135
+ invalid_properties
136
+ end
137
+
138
+ # Check to see if the all the properties in the model are valid
139
+ # @return true if the model is valid
140
+ def valid?
141
+ warn '[DEPRECATED] the `valid?` method is obsolete'
142
+ return false if @name.nil?
143
+ return false if @name.to_s.length > 255
144
+ return false if @filters.nil?
145
+ notification_frequency_validator = EnumAttributeValidator.new('String', ["daily", "weekly", "monthly"])
146
+ return false unless notification_frequency_validator.valid?(@notification_frequency)
147
+ true
148
+ end
149
+
150
+ # Custom attribute writer method with validation
151
+ # @param [Object] name Value to be assigned
152
+ def name=(name)
153
+ if name.nil?
154
+ fail ArgumentError, 'name cannot be nil'
155
+ end
156
+
157
+ if name.to_s.length > 255
158
+ fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 255.'
159
+ end
160
+
161
+ @name = name
162
+ end
163
+
164
+ # Custom attribute writer method with validation
165
+ # @param [Object] filters Value to be assigned
166
+ def filters=(filters)
167
+ if filters.nil?
168
+ fail ArgumentError, 'filters cannot be nil'
169
+ end
170
+
171
+ @filters = filters
172
+ end
173
+
174
+ # Custom attribute writer method checking allowed values (enum).
175
+ # @param [Object] notification_frequency Object to be assigned
176
+ def notification_frequency=(notification_frequency)
177
+ validator = EnumAttributeValidator.new('String', ["daily", "weekly", "monthly"])
178
+ unless validator.valid?(notification_frequency)
179
+ fail ArgumentError, "invalid value for \"notification_frequency\", must be one of #{validator.allowable_values}."
180
+ end
181
+ @notification_frequency = notification_frequency
182
+ end
183
+
184
+ # Checks equality by comparing each attribute.
185
+ # @param [Object] Object to be compared
186
+ def ==(o)
187
+ return true if self.equal?(o)
188
+ self.class == o.class &&
189
+ name == o.name &&
190
+ filters == o.filters &&
191
+ notification_frequency == o.notification_frequency
192
+ end
193
+
194
+ # @see the `==` method
195
+ # @param [Object] Object to be compared
196
+ def eql?(o)
197
+ self == o
198
+ end
199
+
200
+ # Calculates hash code according to all attributes.
201
+ # @return [Integer] Hash code
202
+ def hash
203
+ [name, filters, notification_frequency].hash
204
+ end
205
+
206
+ # Builds the object from hash
207
+ # @param [Hash] attributes Model attributes in the form of hash
208
+ # @return [Object] Returns the model itself
209
+ def self.build_from_hash(attributes)
210
+ return nil unless attributes.is_a?(Hash)
211
+ attributes = attributes.transform_keys(&:to_sym)
212
+ transformed_hash = {}
213
+ openapi_types.each_pair do |key, type|
214
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
215
+ transformed_hash["#{key}"] = nil
216
+ elsif type =~ /\AArray<(.*)>/i
217
+ # check to ensure the input is an array given that the attribute
218
+ # is documented as an array but the input is not
219
+ if attributes[attribute_map[key]].is_a?(Array)
220
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
221
+ end
222
+ elsif !attributes[attribute_map[key]].nil?
223
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
224
+ end
225
+ end
226
+ new(transformed_hash)
227
+ end
228
+
229
+ # Returns the object in the form of hash
230
+ # @return [Hash] Returns the object in the form of hash
231
+ def to_hash
232
+ hash = {}
233
+ self.class.attribute_map.each_pair do |attr, param|
234
+ value = self.send(attr)
235
+ if value.nil?
236
+ is_nullable = self.class.openapi_nullable.include?(attr)
237
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
238
+ end
239
+
240
+ hash[param] = _to_hash(value)
241
+ end
242
+ hash
243
+ end
244
+
245
+ end
246
+
247
+ end
@@ -0,0 +1,231 @@
1
+ =begin
2
+ #Growwer API
3
+
4
+ #The Growwer customer API. Authenticate every call with an API key created on your profile page, sent as `Authorization: Bearer <key>`. A read key can call every GET operation; writes need a read and write key and an `Idempotency-Key` header. Idempotency: use a new `Idempotency-Key` (1 to 255 printable ASCII characters without spaces) for each operation and reuse it only to retry that same operation. Keys belong to your account, not to one API key. - A successful write is stored for 30 days: a retry with the same key and the same request replays its response with `Idempotent-Replayed: true` and does nothing again. - A refused write (4xx) has no effect and releases its key: once you fix the cause, retry with the same key and the write runs. - A failed write (5xx) may have taken effect, so it is never run again under its key: a retry gets 409 `idempotency_outcome_unknown`. Check whether it took effect before retrying with a new key. - A retry while the first request is still running gets 409 `idempotency_request_in_progress`. A request still running after 5 minutes is treated as failed: a retry gets 409 `idempotency_outcome_unknown`. - The same key with a different request (method, path, query or body) gets 409 `idempotency_key_reused`. A write without the header gets 400 `idempotency_key_required`. Every response carries `X-Request-Id`. Errors share one shape, `{code, message, requestId, details?}`. Money is integer cents plus a currency code and dates are ISO-8601.
5
+
6
+ The version of the OpenAPI document: 1
7
+ Contact: support@growwer.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.24.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Growwer
17
+ class Error < ApiModelBase
18
+ # A stable, machine-readable error code.
19
+ attr_accessor :code
20
+
21
+ # A human-readable explanation. It may change.
22
+ attr_accessor :message
23
+
24
+ # The X-Request-Id of the call. Quote it when reporting a problem.
25
+ attr_accessor :request_id
26
+
27
+ # Extra data on some errors, such as the invalid fields of a validation_failed error.
28
+ attr_accessor :details
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ :'code' => :'code',
34
+ :'message' => :'message',
35
+ :'request_id' => :'requestId',
36
+ :'details' => :'details'
37
+ }
38
+ end
39
+
40
+ # Returns attribute mapping this model knows about
41
+ def self.acceptable_attribute_map
42
+ attribute_map
43
+ end
44
+
45
+ # Returns all the JSON keys this model knows about
46
+ def self.acceptable_attributes
47
+ acceptable_attribute_map.values
48
+ end
49
+
50
+ # Attribute type mapping.
51
+ def self.openapi_types
52
+ {
53
+ :'code' => :'String',
54
+ :'message' => :'String',
55
+ :'request_id' => :'String',
56
+ :'details' => :'Hash<String, Object>'
57
+ }
58
+ end
59
+
60
+ # List of attributes with nullable: true
61
+ def self.openapi_nullable
62
+ Set.new([
63
+ ])
64
+ end
65
+
66
+ # Initializes the object
67
+ # @param [Hash] attributes Model attributes in the form of hash
68
+ def initialize(attributes = {})
69
+ if (!attributes.is_a?(Hash))
70
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Growwer::Error` initialize method"
71
+ end
72
+
73
+ # check to see if the attribute exists and convert string to symbol for hash key
74
+ acceptable_attribute_map = self.class.acceptable_attribute_map
75
+ attributes = attributes.each_with_object({}) { |(k, v), h|
76
+ if (!acceptable_attribute_map.key?(k.to_sym))
77
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Growwer::Error`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
78
+ end
79
+ h[k.to_sym] = v
80
+ }
81
+
82
+ if attributes.key?(:'code')
83
+ self.code = attributes[:'code']
84
+ else
85
+ self.code = nil
86
+ end
87
+
88
+ if attributes.key?(:'message')
89
+ self.message = attributes[:'message']
90
+ else
91
+ self.message = nil
92
+ end
93
+
94
+ if attributes.key?(:'request_id')
95
+ self.request_id = attributes[:'request_id']
96
+ else
97
+ self.request_id = nil
98
+ end
99
+
100
+ if attributes.key?(:'details')
101
+ if (value = attributes[:'details']).is_a?(Hash)
102
+ self.details = value
103
+ end
104
+ end
105
+ end
106
+
107
+ # Show invalid properties with the reasons. Usually used together with valid?
108
+ # @return Array for valid properties with the reasons
109
+ def list_invalid_properties
110
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
111
+ invalid_properties = Array.new
112
+ if @code.nil?
113
+ invalid_properties.push('invalid value for "code", code cannot be nil.')
114
+ end
115
+
116
+ if @message.nil?
117
+ invalid_properties.push('invalid value for "message", message cannot be nil.')
118
+ end
119
+
120
+ if @request_id.nil?
121
+ invalid_properties.push('invalid value for "request_id", request_id cannot be nil.')
122
+ end
123
+
124
+ invalid_properties
125
+ end
126
+
127
+ # Check to see if the all the properties in the model are valid
128
+ # @return true if the model is valid
129
+ def valid?
130
+ warn '[DEPRECATED] the `valid?` method is obsolete'
131
+ return false if @code.nil?
132
+ return false if @message.nil?
133
+ return false if @request_id.nil?
134
+ true
135
+ end
136
+
137
+ # Custom attribute writer method with validation
138
+ # @param [Object] code Value to be assigned
139
+ def code=(code)
140
+ if code.nil?
141
+ fail ArgumentError, 'code cannot be nil'
142
+ end
143
+
144
+ @code = code
145
+ end
146
+
147
+ # Custom attribute writer method with validation
148
+ # @param [Object] message Value to be assigned
149
+ def message=(message)
150
+ if message.nil?
151
+ fail ArgumentError, 'message cannot be nil'
152
+ end
153
+
154
+ @message = message
155
+ end
156
+
157
+ # Custom attribute writer method with validation
158
+ # @param [Object] request_id Value to be assigned
159
+ def request_id=(request_id)
160
+ if request_id.nil?
161
+ fail ArgumentError, 'request_id cannot be nil'
162
+ end
163
+
164
+ @request_id = request_id
165
+ end
166
+
167
+ # Checks equality by comparing each attribute.
168
+ # @param [Object] Object to be compared
169
+ def ==(o)
170
+ return true if self.equal?(o)
171
+ self.class == o.class &&
172
+ code == o.code &&
173
+ message == o.message &&
174
+ request_id == o.request_id &&
175
+ details == o.details
176
+ end
177
+
178
+ # @see the `==` method
179
+ # @param [Object] Object to be compared
180
+ def eql?(o)
181
+ self == o
182
+ end
183
+
184
+ # Calculates hash code according to all attributes.
185
+ # @return [Integer] Hash code
186
+ def hash
187
+ [code, message, request_id, details].hash
188
+ end
189
+
190
+ # Builds the object from hash
191
+ # @param [Hash] attributes Model attributes in the form of hash
192
+ # @return [Object] Returns the model itself
193
+ def self.build_from_hash(attributes)
194
+ return nil unless attributes.is_a?(Hash)
195
+ attributes = attributes.transform_keys(&:to_sym)
196
+ transformed_hash = {}
197
+ openapi_types.each_pair do |key, type|
198
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
199
+ transformed_hash["#{key}"] = nil
200
+ elsif type =~ /\AArray<(.*)>/i
201
+ # check to ensure the input is an array given that the attribute
202
+ # is documented as an array but the input is not
203
+ if attributes[attribute_map[key]].is_a?(Array)
204
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
205
+ end
206
+ elsif !attributes[attribute_map[key]].nil?
207
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
208
+ end
209
+ end
210
+ new(transformed_hash)
211
+ end
212
+
213
+ # Returns the object in the form of hash
214
+ # @return [Hash] Returns the object in the form of hash
215
+ def to_hash
216
+ hash = {}
217
+ self.class.attribute_map.each_pair do |attr, param|
218
+ value = self.send(attr)
219
+ if value.nil?
220
+ is_nullable = self.class.openapi_nullable.include?(attr)
221
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
222
+ end
223
+
224
+ hash[param] = _to_hash(value)
225
+ end
226
+ hash
227
+ end
228
+
229
+ end
230
+
231
+ end
@@ -0,0 +1,191 @@
1
+ =begin
2
+ #Growwer API
3
+
4
+ #The Growwer customer API. Authenticate every call with an API key created on your profile page, sent as `Authorization: Bearer <key>`. A read key can call every GET operation; writes need a read and write key and an `Idempotency-Key` header. Idempotency: use a new `Idempotency-Key` (1 to 255 printable ASCII characters without spaces) for each operation and reuse it only to retry that same operation. Keys belong to your account, not to one API key. - A successful write is stored for 30 days: a retry with the same key and the same request replays its response with `Idempotent-Replayed: true` and does nothing again. - A refused write (4xx) has no effect and releases its key: once you fix the cause, retry with the same key and the write runs. - A failed write (5xx) may have taken effect, so it is never run again under its key: a retry gets 409 `idempotency_outcome_unknown`. Check whether it took effect before retrying with a new key. - A retry while the first request is still running gets 409 `idempotency_request_in_progress`. A request still running after 5 minutes is treated as failed: a retry gets 409 `idempotency_outcome_unknown`. - The same key with a different request (method, path, query or body) gets 409 `idempotency_key_reused`. A write without the header gets 400 `idempotency_key_required`. Every response carries `X-Request-Id`. Errors share one shape, `{code, message, requestId, details?}`. Money is integer cents plus a currency code and dates are ISO-8601.
5
+
6
+ The version of the OpenAPI document: 1
7
+ Contact: support@growwer.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.24.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Growwer
17
+ class GetBuyerWallet200Response < ApiModelBase
18
+ attr_accessor :balance
19
+
20
+ # The wallet page, in your language (English when the web is not available in it), where you top up your balance.
21
+ attr_accessor :top_up_url
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'balance' => :'balance',
27
+ :'top_up_url' => :'topUpUrl'
28
+ }
29
+ end
30
+
31
+ # Returns attribute mapping this model knows about
32
+ def self.acceptable_attribute_map
33
+ attribute_map
34
+ end
35
+
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ acceptable_attribute_map.values
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ def self.openapi_types
43
+ {
44
+ :'balance' => :'Balance',
45
+ :'top_up_url' => :'String'
46
+ }
47
+ end
48
+
49
+ # List of attributes with nullable: true
50
+ def self.openapi_nullable
51
+ Set.new([
52
+ ])
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param [Hash] attributes Model attributes in the form of hash
57
+ def initialize(attributes = {})
58
+ if (!attributes.is_a?(Hash))
59
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Growwer::GetBuyerWallet200Response` initialize method"
60
+ end
61
+
62
+ # check to see if the attribute exists and convert string to symbol for hash key
63
+ acceptable_attribute_map = self.class.acceptable_attribute_map
64
+ attributes = attributes.each_with_object({}) { |(k, v), h|
65
+ if (!acceptable_attribute_map.key?(k.to_sym))
66
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Growwer::GetBuyerWallet200Response`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
67
+ end
68
+ h[k.to_sym] = v
69
+ }
70
+
71
+ if attributes.key?(:'balance')
72
+ self.balance = attributes[:'balance']
73
+ else
74
+ self.balance = nil
75
+ end
76
+
77
+ if attributes.key?(:'top_up_url')
78
+ self.top_up_url = attributes[:'top_up_url']
79
+ else
80
+ self.top_up_url = nil
81
+ end
82
+ end
83
+
84
+ # Show invalid properties with the reasons. Usually used together with valid?
85
+ # @return Array for valid properties with the reasons
86
+ def list_invalid_properties
87
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
88
+ invalid_properties = Array.new
89
+ if @balance.nil?
90
+ invalid_properties.push('invalid value for "balance", balance cannot be nil.')
91
+ end
92
+
93
+ if @top_up_url.nil?
94
+ invalid_properties.push('invalid value for "top_up_url", top_up_url cannot be nil.')
95
+ end
96
+
97
+ invalid_properties
98
+ end
99
+
100
+ # Check to see if the all the properties in the model are valid
101
+ # @return true if the model is valid
102
+ def valid?
103
+ warn '[DEPRECATED] the `valid?` method is obsolete'
104
+ return false if @balance.nil?
105
+ return false if @top_up_url.nil?
106
+ true
107
+ end
108
+
109
+ # Custom attribute writer method with validation
110
+ # @param [Object] balance Value to be assigned
111
+ def balance=(balance)
112
+ if balance.nil?
113
+ fail ArgumentError, 'balance cannot be nil'
114
+ end
115
+
116
+ @balance = balance
117
+ end
118
+
119
+ # Custom attribute writer method with validation
120
+ # @param [Object] top_up_url Value to be assigned
121
+ def top_up_url=(top_up_url)
122
+ if top_up_url.nil?
123
+ fail ArgumentError, 'top_up_url cannot be nil'
124
+ end
125
+
126
+ @top_up_url = top_up_url
127
+ end
128
+
129
+ # Checks equality by comparing each attribute.
130
+ # @param [Object] Object to be compared
131
+ def ==(o)
132
+ return true if self.equal?(o)
133
+ self.class == o.class &&
134
+ balance == o.balance &&
135
+ top_up_url == o.top_up_url
136
+ end
137
+
138
+ # @see the `==` method
139
+ # @param [Object] Object to be compared
140
+ def eql?(o)
141
+ self == o
142
+ end
143
+
144
+ # Calculates hash code according to all attributes.
145
+ # @return [Integer] Hash code
146
+ def hash
147
+ [balance, top_up_url].hash
148
+ end
149
+
150
+ # Builds the object from hash
151
+ # @param [Hash] attributes Model attributes in the form of hash
152
+ # @return [Object] Returns the model itself
153
+ def self.build_from_hash(attributes)
154
+ return nil unless attributes.is_a?(Hash)
155
+ attributes = attributes.transform_keys(&:to_sym)
156
+ transformed_hash = {}
157
+ openapi_types.each_pair do |key, type|
158
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
159
+ transformed_hash["#{key}"] = nil
160
+ elsif type =~ /\AArray<(.*)>/i
161
+ # check to ensure the input is an array given that the attribute
162
+ # is documented as an array but the input is not
163
+ if attributes[attribute_map[key]].is_a?(Array)
164
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
165
+ end
166
+ elsif !attributes[attribute_map[key]].nil?
167
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
168
+ end
169
+ end
170
+ new(transformed_hash)
171
+ end
172
+
173
+ # Returns the object in the form of hash
174
+ # @return [Hash] Returns the object in the form of hash
175
+ def to_hash
176
+ hash = {}
177
+ self.class.attribute_map.each_pair do |attr, param|
178
+ value = self.send(attr)
179
+ if value.nil?
180
+ is_nullable = self.class.openapi_nullable.include?(attr)
181
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
182
+ end
183
+
184
+ hash[param] = _to_hash(value)
185
+ end
186
+ hash
187
+ end
188
+
189
+ end
190
+
191
+ end