peal 0.2.0 → 0.3.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 (528) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +171 -320
  3. data/lib/peal/analytics/client.rb +120 -0
  4. data/lib/peal/analytics/types/post_analytics_request.rb +13 -0
  5. data/lib/peal/analytics/types/summary_analytics_request.rb +17 -0
  6. data/lib/peal/api_keys/client.rb +153 -0
  7. data/lib/peal/api_keys/types/list_api_keys_request.rb +11 -0
  8. data/lib/peal/api_keys/types/new_api_key.rb +17 -0
  9. data/lib/peal/api_keys/types/revoke_api_keys_request.rb +13 -0
  10. data/lib/peal/assistant/client.rb +112 -0
  11. data/lib/peal/assistant/types/status_assistant_request.rb +11 -0
  12. data/lib/peal/assistant/types/suggestion_request.rb +15 -0
  13. data/lib/peal/billing/client.rb +58 -0
  14. data/lib/peal/billing/types/get_billing_request.rb +11 -0
  15. data/lib/peal/channels/client.rb +366 -0
  16. data/lib/peal/channels/types/choose_accounts.rb +17 -0
  17. data/lib/peal/channels/types/connect_callback.rb +21 -0
  18. data/lib/peal/channels/types/connect_channel.rb +17 -0
  19. data/lib/peal/channels/types/disconnect_channels_request.rb +13 -0
  20. data/lib/peal/channels/types/list_channels_request.rb +11 -0
  21. data/lib/peal/channels/types/platforms_channels_request.rb +11 -0
  22. data/lib/peal/channels/types/reconnect_channels_request.rb +13 -0
  23. data/lib/peal/client.rb +93 -0
  24. data/lib/peal/environment.rb +7 -0
  25. data/lib/peal/errors/api_error.rb +8 -0
  26. data/lib/peal/errors/client_error.rb +17 -0
  27. data/lib/peal/errors/connection_error.rb +11 -0
  28. data/lib/peal/errors/redirect_error.rb +8 -0
  29. data/lib/peal/errors/response_error.rb +65 -0
  30. data/lib/peal/errors/server_error.rb +11 -0
  31. data/lib/peal/errors/timeout_error.rb +8 -0
  32. data/lib/peal/internal/errors/constraint_error.rb +10 -0
  33. data/lib/peal/internal/errors/type_error.rb +10 -0
  34. data/lib/peal/internal/http/base_request.rb +83 -0
  35. data/lib/peal/internal/http/raw_client.rb +297 -0
  36. data/lib/peal/internal/iterators/cursor_item_iterator.rb +33 -0
  37. data/lib/peal/internal/iterators/cursor_page_iterator.rb +126 -0
  38. data/lib/peal/internal/iterators/item_iterator.rb +120 -0
  39. data/lib/peal/internal/iterators/offset_item_iterator.rb +35 -0
  40. data/lib/peal/internal/iterators/offset_page_iterator.rb +160 -0
  41. data/lib/peal/internal/json/request.rb +51 -0
  42. data/lib/peal/internal/json/serializable.rb +25 -0
  43. data/lib/peal/internal/multipart/multipart_encoder.rb +141 -0
  44. data/lib/peal/internal/multipart/multipart_form_data.rb +84 -0
  45. data/lib/peal/internal/multipart/multipart_form_data_part.rb +51 -0
  46. data/lib/peal/internal/multipart/multipart_request.rb +42 -0
  47. data/lib/peal/internal/types/array.rb +47 -0
  48. data/lib/peal/internal/types/boolean.rb +34 -0
  49. data/lib/peal/internal/types/enum.rb +56 -0
  50. data/lib/peal/internal/types/hash.rb +36 -0
  51. data/lib/peal/internal/types/model/field.rb +38 -0
  52. data/lib/peal/internal/types/model.rb +258 -0
  53. data/lib/peal/internal/types/type.rb +35 -0
  54. data/lib/peal/internal/types/union.rb +161 -0
  55. data/lib/peal/internal/types/unknown.rb +15 -0
  56. data/lib/peal/internal/types/utils.rb +144 -0
  57. data/lib/peal/invitations/client.rb +160 -0
  58. data/lib/peal/invitations/types/list_invitations_request.rb +11 -0
  59. data/lib/peal/invitations/types/new_invitation.rb +15 -0
  60. data/lib/peal/invitations/types/revoke_invitations_request.rb +13 -0
  61. data/lib/peal/media/client.rb +360 -0
  62. data/lib/peal/media/types/complete_media_request.rb +13 -0
  63. data/lib/peal/media/types/delete_media_request.rb +13 -0
  64. data/lib/peal/media/types/get_media_request.rb +13 -0
  65. data/lib/peal/media/types/list_media_request.rb +15 -0
  66. data/lib/peal/media/types/media_description.rb +15 -0
  67. data/lib/peal/media/types/new_upload.rb +17 -0
  68. data/lib/peal/media/types/usage_media_request.rb +13 -0
  69. data/lib/peal/members/client.rb +58 -0
  70. data/lib/peal/members/types/list_members_request.rb +11 -0
  71. data/lib/peal/notices/client.rb +189 -0
  72. data/lib/peal/notices/types/list_notices_request.rb +13 -0
  73. data/lib/peal/notices/types/mark_notices_read.rb +11 -0
  74. data/lib/peal/notification_preferences/client.rb +100 -0
  75. data/lib/peal/notification_preferences/types/notification_preferences_change.rb +13 -0
  76. data/lib/peal/notification_preferences/types/notification_preferences_change_email.rb +19 -0
  77. data/lib/peal/posts/client.rb +703 -0
  78. data/lib/peal/posts/types/attempts_posts_request.rb +13 -0
  79. data/lib/peal/posts/types/cancel_posts_request.rb +13 -0
  80. data/lib/peal/posts/types/confirm_posts_request.rb +17 -0
  81. data/lib/peal/posts/types/create_posts_request.rb +13 -0
  82. data/lib/peal/posts/types/discard_posts_request.rb +13 -0
  83. data/lib/peal/posts/types/drafts_posts_request.rb +15 -0
  84. data/lib/peal/posts/types/get_posts_request.rb +13 -0
  85. data/lib/peal/posts/types/list_posts_request.rb +15 -0
  86. data/lib/peal/posts/types/repost_posts_request.rb +15 -0
  87. data/lib/peal/posts/types/reschedule_posts_request.rb +15 -0
  88. data/lib/peal/posts/types/schedule_post.rb +19 -0
  89. data/lib/peal/posts/types/unschedule_posts_request.rb +13 -0
  90. data/lib/peal/posts/types/update_posts_request.rb +15 -0
  91. data/lib/peal/session/client.rb +55 -0
  92. data/lib/peal/system/client.rb +82 -0
  93. data/lib/peal/tiktok/client.rb +62 -0
  94. data/lib/peal/tiktok/types/creator_tiktok_request.rb +13 -0
  95. data/lib/peal/types/already_member_encoded.rb +9 -0
  96. data/lib/peal/types/alt_text_too_long_encoded.rb +13 -0
  97. data/lib/peal/types/alt_text_too_long_encoded_tag.rb +13 -0
  98. data/lib/peal/types/analytics_summary.rb +23 -0
  99. data/lib/peal/types/api_key.rb +21 -0
  100. data/lib/peal/types/api_key_not_found_encoded.rb +9 -0
  101. data/lib/peal/types/assistant_action.rb +21 -0
  102. data/lib/peal/types/assistant_action_hashtags.rb +9 -0
  103. data/lib/peal/types/assistant_action_rewrite.rb +11 -0
  104. data/lib/peal/types/assistant_action_shorten.rb +11 -0
  105. data/lib/peal/types/assistant_action_translate.rb +11 -0
  106. data/lib/peal/types/assistant_failed_encoded.rb +13 -0
  107. data/lib/peal/types/assistant_failed_encoded_reason.rb +16 -0
  108. data/lib/peal/types/assistant_failed_encoded_tag.rb +13 -0
  109. data/lib/peal/types/assistant_input_rejected_encoded.rb +15 -0
  110. data/lib/peal/types/assistant_input_rejected_encoded_reason.rb +14 -0
  111. data/lib/peal/types/assistant_input_rejected_encoded_tag.rb +13 -0
  112. data/lib/peal/types/assistant_quota_exceeded_encoded.rb +15 -0
  113. data/lib/peal/types/assistant_quota_exceeded_encoded_tag.rb +13 -0
  114. data/lib/peal/types/assistant_status.rb +19 -0
  115. data/lib/peal/types/assistant_tone.rb +17 -0
  116. data/lib/peal/types/assistant_unavailable_encoded.rb +11 -0
  117. data/lib/peal/types/assistant_unavailable_encoded_tag.rb +13 -0
  118. data/lib/peal/types/attempt_result.rb +24 -0
  119. data/lib/peal/types/authorization.rb +11 -0
  120. data/lib/peal/types/billing.rb +21 -0
  121. data/lib/peal/types/billing_subscription.rb +17 -0
  122. data/lib/peal/types/calendar_day.rb +25 -0
  123. data/lib/peal/types/channel.rb +23 -0
  124. data/lib/peal/types/channel_cannot_post_encoded.rb +13 -0
  125. data/lib/peal/types/channel_cannot_post_encoded_reason.rb +14 -0
  126. data/lib/peal/types/channel_cannot_post_encoded_tag.rb +13 -0
  127. data/lib/peal/types/channel_metrics.rb +23 -0
  128. data/lib/peal/types/channel_not_found_encoded.rb +9 -0
  129. data/lib/peal/types/channel_options.rb +13 -0
  130. data/lib/peal/types/channel_status.rb +19 -0
  131. data/lib/peal/types/channel_status_active.rb +9 -0
  132. data/lib/peal/types/channel_status_disabled.rb +11 -0
  133. data/lib/peal/types/channel_status_refresh_needed.rb +9 -0
  134. data/lib/peal/types/choosable_account.rb +19 -0
  135. data/lib/peal/types/conflict_error_body.rb +17 -0
  136. data/lib/peal/types/connect_failed_encoded.rb +13 -0
  137. data/lib/peal/types/connect_failed_encoded_tag.rb +13 -0
  138. data/lib/peal/types/connect_failure_reason.rb +22 -0
  139. data/lib/peal/types/connect_outcome.rb +17 -0
  140. data/lib/peal/types/connect_outcome_choose.rb +15 -0
  141. data/lib/peal/types/connect_outcome_connected.rb +11 -0
  142. data/lib/peal/types/connectable_platforms.rb +11 -0
  143. data/lib/peal/types/content_violation.rb +65 -0
  144. data/lib/peal/types/content_violation_alt_text_too_long.rb +19 -0
  145. data/lib/peal/types/content_violation_aspect_ratio_unsupported.rb +23 -0
  146. data/lib/peal/types/content_violation_aspect_ratio_unsupported_maximum.rb +15 -0
  147. data/lib/peal/types/content_violation_aspect_ratio_unsupported_minimum.rb +15 -0
  148. data/lib/peal/types/content_violation_empty.rb +13 -0
  149. data/lib/peal/types/content_violation_forbidden_characters.rb +15 -0
  150. data/lib/peal/types/content_violation_media_required.rb +13 -0
  151. data/lib/peal/types/content_violation_media_too_large.rb +19 -0
  152. data/lib/peal/types/content_violation_media_too_small.rb +19 -0
  153. data/lib/peal/types/content_violation_media_type_unsupported.rb +17 -0
  154. data/lib/peal/types/content_violation_mixed_media.rb +13 -0
  155. data/lib/peal/types/content_violation_no_channels.rb +9 -0
  156. data/lib/peal/types/content_violation_option_invalid.rb +15 -0
  157. data/lib/peal/types/content_violation_option_missing.rb +15 -0
  158. data/lib/peal/types/content_violation_option_too_long.rb +19 -0
  159. data/lib/peal/types/content_violation_options_for_other_platform.rb +15 -0
  160. data/lib/peal/types/content_violation_options_without_channel.rb +11 -0
  161. data/lib/peal/types/content_violation_override_without_channel.rb +11 -0
  162. data/lib/peal/types/content_violation_side_out_of_range.rb +23 -0
  163. data/lib/peal/types/content_violation_text_too_long.rb +19 -0
  164. data/lib/peal/types/content_violation_too_many_hashtags.rb +17 -0
  165. data/lib/peal/types/content_violation_too_many_links.rb +17 -0
  166. data/lib/peal/types/content_violation_too_many_media.rb +17 -0
  167. data/lib/peal/types/content_violation_too_many_mentions.rb +17 -0
  168. data/lib/peal/types/content_violation_too_many_pixels.rb +21 -0
  169. data/lib/peal/types/content_violation_too_many_videos.rb +17 -0
  170. data/lib/peal/types/content_violation_video_too_long.rb +19 -0
  171. data/lib/peal/types/content_violation_video_too_short.rb +19 -0
  172. data/lib/peal/types/created_api_key.rb +13 -0
  173. data/lib/peal/types/database_unavailable_encoded.rb +11 -0
  174. data/lib/peal/types/database_unavailable_encoded_tag.rb +13 -0
  175. data/lib/peal/types/draft_page.rb +13 -0
  176. data/lib/peal/types/effect_http_api_error_bad_request_encoded.rb +11 -0
  177. data/lib/peal/types/effect_http_api_error_bad_request_encoded_tag.rb +13 -0
  178. data/lib/peal/types/engagement_day.rb +19 -0
  179. data/lib/peal/types/failure_reason.rb +24 -0
  180. data/lib/peal/types/forbidden_encoded.rb +11 -0
  181. data/lib/peal/types/forbidden_encoded_tag.rb +13 -0
  182. data/lib/peal/types/invalid_date_range_encoded.rb +11 -0
  183. data/lib/peal/types/invalid_date_range_encoded_tag.rb +13 -0
  184. data/lib/peal/types/invalid_time_range_encoded.rb +11 -0
  185. data/lib/peal/types/invalid_time_range_encoded_tag.rb +13 -0
  186. data/lib/peal/types/invalid_time_zone_encoded.rb +13 -0
  187. data/lib/peal/types/invalid_time_zone_encoded_tag.rb +13 -0
  188. data/lib/peal/types/invitation.rb +21 -0
  189. data/lib/peal/types/invitation_not_found_encoded.rb +9 -0
  190. data/lib/peal/types/me.rb +15 -0
  191. data/lib/peal/types/me_user.rb +21 -0
  192. data/lib/peal/types/me_user_locale.rb +14 -0
  193. data/lib/peal/types/media.rb +33 -0
  194. data/lib/peal/types/media_attachment.rb +13 -0
  195. data/lib/peal/types/media_content_type.rb +18 -0
  196. data/lib/peal/types/media_dimensions.rb +13 -0
  197. data/lib/peal/types/media_in_use_encoded.rb +13 -0
  198. data/lib/peal/types/media_in_use_encoded_tag.rb +13 -0
  199. data/lib/peal/types/media_kind.rb +14 -0
  200. data/lib/peal/types/media_not_found_encoded.rb +9 -0
  201. data/lib/peal/types/media_page.rb +13 -0
  202. data/lib/peal/types/media_status.rb +21 -0
  203. data/lib/peal/types/media_status_pending.rb +9 -0
  204. data/lib/peal/types/media_status_ready.rb +9 -0
  205. data/lib/peal/types/media_status_rejected.rb +11 -0
  206. data/lib/peal/types/media_status_uploaded.rb +11 -0
  207. data/lib/peal/types/media_store_unavailable_encoded.rb +11 -0
  208. data/lib/peal/types/media_store_unavailable_encoded_tag.rb +13 -0
  209. data/lib/peal/types/media_too_large_encoded.rb +15 -0
  210. data/lib/peal/types/media_too_large_encoded_kind.rb +14 -0
  211. data/lib/peal/types/media_usage.rb +13 -0
  212. data/lib/peal/types/membership.rb +19 -0
  213. data/lib/peal/types/metric_totals.rb +21 -0
  214. data/lib/peal/types/metrics_snapshot.rb +13 -0
  215. data/lib/peal/types/non_finite_number.rb +14 -0
  216. data/lib/peal/types/not_found_error_body.rb +17 -0
  217. data/lib/peal/types/notice.rb +19 -0
  218. data/lib/peal/types/notice_channel.rb +13 -0
  219. data/lib/peal/types/notice_event.rb +23 -0
  220. data/lib/peal/types/notice_event_channel_reconnect_required.rb +11 -0
  221. data/lib/peal/types/notice_event_channel_reconnect_soon.rb +13 -0
  222. data/lib/peal/types/notice_event_post_failed.rb +15 -0
  223. data/lib/peal/types/notice_event_post_published.rb +15 -0
  224. data/lib/peal/types/notice_event_post_unconfirmed.rb +13 -0
  225. data/lib/peal/types/notice_page.rb +13 -0
  226. data/lib/peal/types/notification_preferences.rb +13 -0
  227. data/lib/peal/types/notification_preferences_email.rb +17 -0
  228. data/lib/peal/types/paid_plan.rb +14 -0
  229. data/lib/peal/types/period_usage.rb +13 -0
  230. data/lib/peal/types/permission.rb +40 -0
  231. data/lib/peal/types/plan.rb +15 -0
  232. data/lib/peal/types/plan_allowances.rb +17 -0
  233. data/lib/peal/types/plan_limit.rb +16 -0
  234. data/lib/peal/types/plan_limit_reached_encoded.rb +15 -0
  235. data/lib/peal/types/plan_limit_reached_encoded_tag.rb +13 -0
  236. data/lib/peal/types/plan_offer.rb +13 -0
  237. data/lib/peal/types/platform.rb +22 -0
  238. data/lib/peal/types/platform_unreachable_encoded.rb +11 -0
  239. data/lib/peal/types/platform_unreachable_encoded_tag.rb +13 -0
  240. data/lib/peal/types/post.rb +23 -0
  241. data/lib/peal/types/post_analytics.rb +13 -0
  242. data/lib/peal/types/post_content.rb +15 -0
  243. data/lib/peal/types/post_content_invalid_encoded.rb +11 -0
  244. data/lib/peal/types/post_draft.rb +15 -0
  245. data/lib/peal/types/post_metrics.rb +19 -0
  246. data/lib/peal/types/post_not_found_encoded.rb +9 -0
  247. data/lib/peal/types/post_outcome.rb +17 -0
  248. data/lib/peal/types/post_schedule.rb +13 -0
  249. data/lib/peal/types/post_status.rb +17 -0
  250. data/lib/peal/types/post_status_conflict_encoded.rb +13 -0
  251. data/lib/peal/types/post_status_conflict_encoded_tag.rb +13 -0
  252. data/lib/peal/types/post_target.rb +29 -0
  253. data/lib/peal/types/post_target_status.rb +18 -0
  254. data/lib/peal/types/prepared_upload.rb +13 -0
  255. data/lib/peal/types/probe_state.rb +18 -0
  256. data/lib/peal/types/publication_attempt.rb +23 -0
  257. data/lib/peal/types/rejection_reason.rb +14 -0
  258. data/lib/peal/types/role.rb +17 -0
  259. data/lib/peal/types/schedule_in_past_encoded.rb +9 -0
  260. data/lib/peal/types/signed_request.rb +15 -0
  261. data/lib/peal/types/signed_request_method.rb +13 -0
  262. data/lib/peal/types/subscription_status.rb +20 -0
  263. data/lib/peal/types/suggestion.rb +17 -0
  264. data/lib/peal/types/suggestion_hashtags.rb +11 -0
  265. data/lib/peal/types/suggestion_text.rb +11 -0
  266. data/lib/peal/types/target_confirmation.rb +17 -0
  267. data/lib/peal/types/target_confirmation_not_published.rb +9 -0
  268. data/lib/peal/types/target_confirmation_published.rb +11 -0
  269. data/lib/peal/types/target_metrics.rb +25 -0
  270. data/lib/peal/types/target_options.rb +19 -0
  271. data/lib/peal/types/target_status_conflict_encoded.rb +11 -0
  272. data/lib/peal/types/text_override.rb +13 -0
  273. data/lib/peal/types/text_unit.rb +18 -0
  274. data/lib/peal/types/tik_tok_account.rb +13 -0
  275. data/lib/peal/types/tik_tok_account_posting.rb +17 -0
  276. data/lib/peal/types/tik_tok_account_posting_blocked.rb +11 -0
  277. data/lib/peal/types/tik_tok_account_posting_ready.rb +11 -0
  278. data/lib/peal/types/tik_tok_block.rb +15 -0
  279. data/lib/peal/types/tik_tok_creator.rb +25 -0
  280. data/lib/peal/types/tik_tok_options.rb +26 -0
  281. data/lib/peal/types/tik_tok_privacy_level.rb +16 -0
  282. data/lib/peal/types/too_many_invitations_encoded.rb +9 -0
  283. data/lib/peal/types/top_post.rb +23 -0
  284. data/lib/peal/types/translation_language.rb +22 -0
  285. data/lib/peal/types/unauthenticated_encoded.rb +11 -0
  286. data/lib/peal/types/unauthenticated_encoded_tag.rb +13 -0
  287. data/lib/peal/types/unconfirmed_reason.rb +16 -0
  288. data/lib/peal/types/unknown_channels_encoded.rb +11 -0
  289. data/lib/peal/types/unknown_media_encoded.rb +11 -0
  290. data/lib/peal/types/unprocessable_entity_error_body.rb +19 -0
  291. data/lib/peal/types/unread_notices.rb +11 -0
  292. data/lib/peal/types/unsupported_media_type_encoded.rb +11 -0
  293. data/lib/peal/types/upload_incomplete_encoded.rb +11 -0
  294. data/lib/peal/types/upload_incomplete_encoded_tag.rb +13 -0
  295. data/lib/peal/types/upload_part.rb +15 -0
  296. data/lib/peal/types/upload_rejected_encoded.rb +13 -0
  297. data/lib/peal/types/upload_rejected_encoded_tag.rb +13 -0
  298. data/lib/peal/types/upload_target.rb +17 -0
  299. data/lib/peal/types/upload_target_multipart.rb +15 -0
  300. data/lib/peal/types/upload_target_single.rb +13 -0
  301. data/lib/peal/types/usage.rb +17 -0
  302. data/lib/peal/types/workspace_member.rb +19 -0
  303. data/lib/peal/types/workspace_not_found_encoded.rb +11 -0
  304. data/lib/peal/types/workspace_not_found_encoded_tag.rb +13 -0
  305. data/lib/peal/types/you_tube_options.rb +24 -0
  306. data/lib/peal/types/you_tube_privacy.rb +15 -0
  307. data/lib/peal/version.rb +2 -12
  308. data/lib/peal.rb +315 -248
  309. metadata +312 -292
  310. data/lib/peal/api/analytics_api.rb +0 -185
  311. data/lib/peal/api/api_keys_api.rb +0 -228
  312. data/lib/peal/api/assistant_api.rb +0 -159
  313. data/lib/peal/api/billing_api.rb +0 -85
  314. data/lib/peal/api/channels_api.rb +0 -526
  315. data/lib/peal/api/invitations_api.rb +0 -228
  316. data/lib/peal/api/media_api.rb +0 -526
  317. data/lib/peal/api/members_api.rb +0 -85
  318. data/lib/peal/api/notices_api.rb +0 -272
  319. data/lib/peal/api/notification_preferences_api.rb +0 -147
  320. data/lib/peal/api/posts_api.rb +0 -993
  321. data/lib/peal/api/session_api.rb +0 -79
  322. data/lib/peal/api/system_api.rb +0 -134
  323. data/lib/peal/api/tiktok_api.rb +0 -91
  324. data/lib/peal/api_client.rb +0 -441
  325. data/lib/peal/api_error.rb +0 -58
  326. data/lib/peal/api_model_base.rb +0 -88
  327. data/lib/peal/configuration.rb +0 -392
  328. data/lib/peal/models/already_member_encoded.rb +0 -201
  329. data/lib/peal/models/alt_text_too_long_encoded.rb +0 -245
  330. data/lib/peal/models/analytics_summary.rb +0 -361
  331. data/lib/peal/models/api_key.rb +0 -281
  332. data/lib/peal/models/api_key_not_found_encoded.rb +0 -201
  333. data/lib/peal/models/api_keys_revoke404_response.rb +0 -103
  334. data/lib/peal/models/assistant_action.rb +0 -105
  335. data/lib/peal/models/assistant_action_any_of.rb +0 -227
  336. data/lib/peal/models/assistant_action_any_of1.rb +0 -227
  337. data/lib/peal/models/assistant_action_any_of2.rb +0 -227
  338. data/lib/peal/models/assistant_action_any_of3.rb +0 -201
  339. data/lib/peal/models/assistant_failed_encoded.rb +0 -229
  340. data/lib/peal/models/assistant_input_rejected_encoded.rb +0 -273
  341. data/lib/peal/models/assistant_quota_exceeded_encoded.rb +0 -271
  342. data/lib/peal/models/assistant_status.rb +0 -335
  343. data/lib/peal/models/assistant_tone.rb +0 -43
  344. data/lib/peal/models/assistant_unavailable_encoded.rb +0 -201
  345. data/lib/peal/models/attempt_result.rb +0 -50
  346. data/lib/peal/models/authorization.rb +0 -177
  347. data/lib/peal/models/billing.rb +0 -303
  348. data/lib/peal/models/billing_subscription.rb +0 -263
  349. data/lib/peal/models/channel.rb +0 -313
  350. data/lib/peal/models/channel_cannot_post_encoded.rb +0 -229
  351. data/lib/peal/models/channel_metrics.rb +0 -425
  352. data/lib/peal/models/channel_not_found_encoded.rb +0 -201
  353. data/lib/peal/models/channel_options.rb +0 -203
  354. data/lib/peal/models/channel_status.rb +0 -104
  355. data/lib/peal/models/channel_status_any_of.rb +0 -201
  356. data/lib/peal/models/channel_status_any_of1.rb +0 -201
  357. data/lib/peal/models/channel_status_any_of2.rb +0 -227
  358. data/lib/peal/models/channels_complete_connect404_response.rb +0 -103
  359. data/lib/peal/models/choosable_account.rb +0 -253
  360. data/lib/peal/models/choose_accounts.rb +0 -241
  361. data/lib/peal/models/connect_callback.rb +0 -279
  362. data/lib/peal/models/connect_channel.rb +0 -207
  363. data/lib/peal/models/connect_failed_encoded.rb +0 -227
  364. data/lib/peal/models/connect_failure_reason.rb +0 -48
  365. data/lib/peal/models/connect_outcome.rb +0 -103
  366. data/lib/peal/models/connect_outcome_any_of.rb +0 -227
  367. data/lib/peal/models/connect_outcome_any_of1.rb +0 -281
  368. data/lib/peal/models/connectable_platforms.rb +0 -179
  369. data/lib/peal/models/content_violation.rb +0 -127
  370. data/lib/peal/models/content_violation_any_of.rb +0 -201
  371. data/lib/peal/models/content_violation_any_of1.rb +0 -227
  372. data/lib/peal/models/content_violation_any_of10.rb +0 -341
  373. data/lib/peal/models/content_violation_any_of11.rb +0 -253
  374. data/lib/peal/models/content_violation_any_of12.rb +0 -341
  375. data/lib/peal/models/content_violation_any_of13.rb +0 -341
  376. data/lib/peal/models/content_violation_any_of14.rb +0 -341
  377. data/lib/peal/models/content_violation_any_of15.rb +0 -341
  378. data/lib/peal/models/content_violation_any_of16.rb +0 -253
  379. data/lib/peal/models/content_violation_any_of17.rb +0 -305
  380. data/lib/peal/models/content_violation_any_of18.rb +0 -367
  381. data/lib/peal/models/content_violation_any_of19.rb +0 -367
  382. data/lib/peal/models/content_violation_any_of2.rb +0 -227
  383. data/lib/peal/models/content_violation_any_of20.rb +0 -367
  384. data/lib/peal/models/content_violation_any_of21.rb +0 -367
  385. data/lib/peal/models/content_violation_any_of22.rb +0 -411
  386. data/lib/peal/models/content_violation_any_of23.rb +0 -455
  387. data/lib/peal/models/content_violation_any_of24.rb +0 -419
  388. data/lib/peal/models/content_violation_any_of24_maximum.rb +0 -103
  389. data/lib/peal/models/content_violation_any_of25.rb +0 -367
  390. data/lib/peal/models/content_violation_any_of3.rb +0 -279
  391. data/lib/peal/models/content_violation_any_of4.rb +0 -279
  392. data/lib/peal/models/content_violation_any_of5.rb +0 -367
  393. data/lib/peal/models/content_violation_any_of6.rb +0 -279
  394. data/lib/peal/models/content_violation_any_of7.rb +0 -253
  395. data/lib/peal/models/content_violation_any_of8.rb +0 -367
  396. data/lib/peal/models/content_violation_any_of9.rb +0 -281
  397. data/lib/peal/models/created_api_key.rb +0 -203
  398. data/lib/peal/models/database_unavailable_encoded.rb +0 -201
  399. data/lib/peal/models/draft_page.rb +0 -191
  400. data/lib/peal/models/effect_http_api_error_bad_request_encoded.rb +0 -201
  401. data/lib/peal/models/engagement_day.rb +0 -364
  402. data/lib/peal/models/failure_reason.rb +0 -50
  403. data/lib/peal/models/forbidden_encoded.rb +0 -201
  404. data/lib/peal/models/invalid_date_range_encoded.rb +0 -201
  405. data/lib/peal/models/invalid_time_range_encoded.rb +0 -201
  406. data/lib/peal/models/invalid_time_zone_encoded.rb +0 -227
  407. data/lib/peal/models/invitation.rb +0 -307
  408. data/lib/peal/models/invitation_not_found_encoded.rb +0 -201
  409. data/lib/peal/models/invitations_create409_response.rb +0 -103
  410. data/lib/peal/models/invitations_revoke404_response.rb +0 -103
  411. data/lib/peal/models/mark_notices_read.rb +0 -197
  412. data/lib/peal/models/me.rb +0 -217
  413. data/lib/peal/models/me_user.rb +0 -317
  414. data/lib/peal/models/media.rb +0 -457
  415. data/lib/peal/models/media_attachment.rb +0 -212
  416. data/lib/peal/models/media_content_type.rb +0 -44
  417. data/lib/peal/models/media_create422_response.rb +0 -104
  418. data/lib/peal/models/media_description.rb +0 -163
  419. data/lib/peal/models/media_dimensions.rb +0 -239
  420. data/lib/peal/models/media_get404_response.rb +0 -103
  421. data/lib/peal/models/media_in_use_encoded.rb +0 -229
  422. data/lib/peal/models/media_kind.rb +0 -40
  423. data/lib/peal/models/media_not_found_encoded.rb +0 -201
  424. data/lib/peal/models/media_page.rb +0 -191
  425. data/lib/peal/models/media_status.rb +0 -105
  426. data/lib/peal/models/media_status_any_of.rb +0 -201
  427. data/lib/peal/models/media_status_any_of1.rb +0 -227
  428. data/lib/peal/models/media_status_any_of2.rb +0 -201
  429. data/lib/peal/models/media_status_any_of3.rb +0 -227
  430. data/lib/peal/models/media_store_unavailable_encoded.rb +0 -201
  431. data/lib/peal/models/media_too_large_encoded.rb +0 -317
  432. data/lib/peal/models/media_usage.rb +0 -207
  433. data/lib/peal/models/membership.rb +0 -283
  434. data/lib/peal/models/metric_totals.rb +0 -399
  435. data/lib/peal/models/metrics_snapshot.rb +0 -203
  436. data/lib/peal/models/new_api_key.rb +0 -269
  437. data/lib/peal/models/new_invitation.rb +0 -245
  438. data/lib/peal/models/new_upload.rb +0 -231
  439. data/lib/peal/models/non_finite_number.rb +0 -41
  440. data/lib/peal/models/notice.rb +0 -267
  441. data/lib/peal/models/notice_channel.rb +0 -225
  442. data/lib/peal/models/notice_event.rb +0 -106
  443. data/lib/peal/models/notice_event_any_of.rb +0 -251
  444. data/lib/peal/models/notice_event_any_of1.rb +0 -265
  445. data/lib/peal/models/notice_event_any_of2.rb +0 -239
  446. data/lib/peal/models/notice_event_any_of3.rb +0 -227
  447. data/lib/peal/models/notice_event_any_of4.rb +0 -253
  448. data/lib/peal/models/notice_page.rb +0 -191
  449. data/lib/peal/models/notification_preferences.rb +0 -203
  450. data/lib/peal/models/notification_preferences_change.rb +0 -169
  451. data/lib/peal/models/notification_preferences_change_email.rb +0 -187
  452. data/lib/peal/models/notification_preferences_email.rb +0 -255
  453. data/lib/peal/models/paid_plan.rb +0 -40
  454. data/lib/peal/models/period_usage.rb +0 -221
  455. data/lib/peal/models/permission.rb +0 -66
  456. data/lib/peal/models/plan.rb +0 -41
  457. data/lib/peal/models/plan_allowances.rb +0 -295
  458. data/lib/peal/models/plan_limit.rb +0 -42
  459. data/lib/peal/models/plan_limit_reached_encoded.rb +0 -271
  460. data/lib/peal/models/plan_offer.rb +0 -225
  461. data/lib/peal/models/platform.rb +0 -48
  462. data/lib/peal/models/platform_unreachable_encoded.rb +0 -201
  463. data/lib/peal/models/post.rb +0 -315
  464. data/lib/peal/models/post_analytics.rb +0 -205
  465. data/lib/peal/models/post_content.rb +0 -251
  466. data/lib/peal/models/post_content_invalid_encoded.rb +0 -229
  467. data/lib/peal/models/post_draft.rb +0 -216
  468. data/lib/peal/models/post_metrics.rb +0 -355
  469. data/lib/peal/models/post_not_found_encoded.rb +0 -201
  470. data/lib/peal/models/post_outcome.rb +0 -43
  471. data/lib/peal/models/post_schedule.rb +0 -203
  472. data/lib/peal/models/post_status.rb +0 -43
  473. data/lib/peal/models/post_status_conflict_encoded.rb +0 -227
  474. data/lib/peal/models/post_target.rb +0 -364
  475. data/lib/peal/models/post_target_status.rb +0 -44
  476. data/lib/peal/models/posts_create422_response.rb +0 -104
  477. data/lib/peal/models/posts_get404_response.rb +0 -103
  478. data/lib/peal/models/posts_repost409_response.rb +0 -103
  479. data/lib/peal/models/posts_schedule422_response.rb +0 -106
  480. data/lib/peal/models/prepared_upload.rb +0 -203
  481. data/lib/peal/models/probe_state.rb +0 -44
  482. data/lib/peal/models/publication_attempt.rb +0 -377
  483. data/lib/peal/models/rejection_reason.rb +0 -40
  484. data/lib/peal/models/role.rb +0 -43
  485. data/lib/peal/models/schedule_in_past_encoded.rb +0 -201
  486. data/lib/peal/models/schedule_post.rb +0 -240
  487. data/lib/peal/models/signed_request.rb +0 -255
  488. data/lib/peal/models/subscription_status.rb +0 -46
  489. data/lib/peal/models/suggestion.rb +0 -103
  490. data/lib/peal/models/suggestion_any_of.rb +0 -227
  491. data/lib/peal/models/suggestion_any_of1.rb +0 -229
  492. data/lib/peal/models/suggestion_request.rb +0 -212
  493. data/lib/peal/models/target_confirmation.rb +0 -103
  494. data/lib/peal/models/target_confirmation_any_of.rb +0 -228
  495. data/lib/peal/models/target_confirmation_any_of1.rb +0 -201
  496. data/lib/peal/models/target_metrics.rb +0 -319
  497. data/lib/peal/models/target_options.rb +0 -104
  498. data/lib/peal/models/target_status_conflict_encoded.rb +0 -227
  499. data/lib/peal/models/text_override.rb +0 -221
  500. data/lib/peal/models/text_unit.rb +0 -44
  501. data/lib/peal/models/tik_tok_account.rb +0 -203
  502. data/lib/peal/models/tik_tok_account_posting.rb +0 -103
  503. data/lib/peal/models/tik_tok_account_posting_any_of.rb +0 -227
  504. data/lib/peal/models/tik_tok_account_posting_any_of1.rb +0 -227
  505. data/lib/peal/models/tik_tok_block.rb +0 -41
  506. data/lib/peal/models/tik_tok_creator.rb +0 -357
  507. data/lib/peal/models/tik_tok_options.rb +0 -274
  508. data/lib/peal/models/tik_tok_privacy_level.rb +0 -42
  509. data/lib/peal/models/too_many_invitations_encoded.rb +0 -201
  510. data/lib/peal/models/top_post.rb +0 -337
  511. data/lib/peal/models/translation_language.rb +0 -48
  512. data/lib/peal/models/unauthenticated_encoded.rb +0 -201
  513. data/lib/peal/models/unconfirmed_reason.rb +0 -42
  514. data/lib/peal/models/unknown_channels_encoded.rb +0 -229
  515. data/lib/peal/models/unknown_media_encoded.rb +0 -229
  516. data/lib/peal/models/unread_notices.rb +0 -195
  517. data/lib/peal/models/unsupported_media_type_encoded.rb +0 -227
  518. data/lib/peal/models/upload_incomplete_encoded.rb +0 -201
  519. data/lib/peal/models/upload_part.rb +0 -265
  520. data/lib/peal/models/upload_rejected_encoded.rb +0 -227
  521. data/lib/peal/models/upload_target.rb +0 -103
  522. data/lib/peal/models/upload_target_any_of.rb +0 -253
  523. data/lib/peal/models/upload_target_any_of1.rb +0 -299
  524. data/lib/peal/models/usage.rb +0 -291
  525. data/lib/peal/models/workspace_member.rb +0 -281
  526. data/lib/peal/models/workspace_not_found_encoded.rb +0 -201
  527. data/lib/peal/models/you_tube_options.rb +0 -324
  528. data/lib/peal/models/you_tube_privacy.rb +0 -41
@@ -1,319 +0,0 @@
1
- =begin
2
- #Peal API
3
-
4
- #Schedule posts across social platforms, follow how they did, and manage a Peal workspace's channels, media and members.
5
-
6
- The version of the OpenAPI document: 0.0.1
7
- Contact: hello@peal.social
8
- Generated by: https://openapi-generator.tech
9
- Generator version: 7.27.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module Peal
17
- class TargetMetrics < ApiModelBase
18
- attr_accessor :channel_id
19
-
20
- attr_accessor :collecting
21
-
22
- attr_accessor :last_collected_at
23
-
24
- attr_accessor :latest
25
-
26
- attr_accessor :permalink
27
-
28
- attr_accessor :published_at
29
-
30
- attr_accessor :snapshots
31
-
32
- attr_accessor :target_id
33
-
34
- # Attribute mapping from ruby-style variable name to JSON key.
35
- def self.attribute_map
36
- {
37
- :'channel_id' => :'channelId',
38
- :'collecting' => :'collecting',
39
- :'last_collected_at' => :'lastCollectedAt',
40
- :'latest' => :'latest',
41
- :'permalink' => :'permalink',
42
- :'published_at' => :'publishedAt',
43
- :'snapshots' => :'snapshots',
44
- :'target_id' => :'targetId'
45
- }
46
- end
47
-
48
- # Returns attribute mapping this model knows about
49
- def self.acceptable_attribute_map
50
- attribute_map
51
- end
52
-
53
- # Returns all the JSON keys this model knows about
54
- def self.acceptable_attributes
55
- acceptable_attribute_map.values
56
- end
57
-
58
- # Attribute type mapping.
59
- def self.openapi_types
60
- {
61
- :'channel_id' => :'String',
62
- :'collecting' => :'Boolean',
63
- :'last_collected_at' => :'String',
64
- :'latest' => :'PostMetrics',
65
- :'permalink' => :'String',
66
- :'published_at' => :'String',
67
- :'snapshots' => :'Array<MetricsSnapshot>',
68
- :'target_id' => :'String'
69
- }
70
- end
71
-
72
- # List of attributes with nullable: true
73
- def self.openapi_nullable
74
- Set.new([
75
- :'last_collected_at',
76
- :'latest',
77
- :'permalink',
78
- ])
79
- end
80
-
81
- # Returns attribute type mapping
82
- def self.acceptable_openapi_types
83
- openapi_types
84
- end
85
-
86
- # Returns the nullable attributes
87
- def self.acceptable_openapi_nullable
88
- openapi_nullable
89
- end
90
-
91
- # Initializes the object
92
- # @param [Hash] attributes Model attributes in the form of hash
93
- def initialize(attributes = {})
94
- if (!attributes.is_a?(Hash))
95
- fail ArgumentError, "The input argument (attributes) must be a hash in `Peal::TargetMetrics` initialize method"
96
- end
97
-
98
- # check to see if the attribute exists and convert string to symbol for hash key
99
- acceptable_attribute_map = self.class.acceptable_attribute_map
100
- attributes = attributes.each_with_object({}) { |(k, v), h|
101
- if (!acceptable_attribute_map.key?(k.to_sym))
102
- fail ArgumentError, "`#{k}` is not a valid attribute in `Peal::TargetMetrics`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
103
- end
104
- h[k.to_sym] = v
105
- }
106
-
107
- if attributes.key?(:'channel_id')
108
- self.channel_id = attributes[:'channel_id']
109
- else
110
- self.channel_id = nil
111
- end
112
-
113
- if attributes.key?(:'collecting')
114
- self.collecting = attributes[:'collecting']
115
- else
116
- self.collecting = nil
117
- end
118
-
119
- if attributes.key?(:'last_collected_at')
120
- self.last_collected_at = attributes[:'last_collected_at']
121
- else
122
- self.last_collected_at = nil
123
- end
124
-
125
- if attributes.key?(:'latest')
126
- self.latest = attributes[:'latest']
127
- else
128
- self.latest = nil
129
- end
130
-
131
- if attributes.key?(:'permalink')
132
- self.permalink = attributes[:'permalink']
133
- else
134
- self.permalink = nil
135
- end
136
-
137
- if attributes.key?(:'published_at')
138
- self.published_at = attributes[:'published_at']
139
- else
140
- self.published_at = nil
141
- end
142
-
143
- if attributes.key?(:'snapshots')
144
- if (value = attributes[:'snapshots']).is_a?(Array)
145
- self.snapshots = value
146
- end
147
- else
148
- self.snapshots = nil
149
- end
150
-
151
- if attributes.key?(:'target_id')
152
- self.target_id = attributes[:'target_id']
153
- else
154
- self.target_id = nil
155
- end
156
- end
157
-
158
- # Show invalid properties with the reasons. Usually used together with valid?
159
- # @return Array for valid properties with the reasons
160
- def list_invalid_properties
161
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
162
- invalid_properties = Array.new
163
- if @channel_id.nil?
164
- invalid_properties.push('invalid value for "channel_id", channel_id cannot be nil.')
165
- end
166
-
167
- if @collecting.nil?
168
- invalid_properties.push('invalid value for "collecting", collecting cannot be nil.')
169
- end
170
-
171
- if @published_at.nil?
172
- invalid_properties.push('invalid value for "published_at", published_at cannot be nil.')
173
- end
174
-
175
- if @snapshots.nil?
176
- invalid_properties.push('invalid value for "snapshots", snapshots cannot be nil.')
177
- end
178
-
179
- if @target_id.nil?
180
- invalid_properties.push('invalid value for "target_id", target_id cannot be nil.')
181
- end
182
-
183
- invalid_properties
184
- end
185
-
186
- # Check to see if the all the properties in the model are valid
187
- # @return true if the model is valid
188
- def valid?
189
- warn '[DEPRECATED] the `valid?` method is obsolete'
190
- return false if @channel_id.nil?
191
- return false if @collecting.nil?
192
- return false if @published_at.nil?
193
- return false if @snapshots.nil?
194
- return false if @target_id.nil?
195
- true
196
- end
197
-
198
- # Custom attribute writer method with validation
199
- # @param [Object] channel_id Value to be assigned
200
- def channel_id=(channel_id)
201
- if channel_id.nil?
202
- fail ArgumentError, 'channel_id cannot be nil'
203
- end
204
-
205
- @channel_id = channel_id
206
- end
207
-
208
- # Custom attribute writer method with validation
209
- # @param [Object] collecting Value to be assigned
210
- def collecting=(collecting)
211
- if collecting.nil?
212
- fail ArgumentError, 'collecting cannot be nil'
213
- end
214
-
215
- @collecting = collecting
216
- end
217
-
218
- # Custom attribute writer method with validation
219
- # @param [Object] published_at Value to be assigned
220
- def published_at=(published_at)
221
- if published_at.nil?
222
- fail ArgumentError, 'published_at cannot be nil'
223
- end
224
-
225
- @published_at = published_at
226
- end
227
-
228
- # Custom attribute writer method with validation
229
- # @param [Object] snapshots Value to be assigned
230
- def snapshots=(snapshots)
231
- if snapshots.nil?
232
- fail ArgumentError, 'snapshots cannot be nil'
233
- end
234
-
235
- @snapshots = snapshots
236
- end
237
-
238
- # Custom attribute writer method with validation
239
- # @param [Object] target_id Value to be assigned
240
- def target_id=(target_id)
241
- if target_id.nil?
242
- fail ArgumentError, 'target_id cannot be nil'
243
- end
244
-
245
- @target_id = target_id
246
- end
247
-
248
- # Checks equality by comparing each attribute.
249
- # @param [Object] Object to be compared
250
- def ==(o)
251
- return true if self.equal?(o)
252
- self.class == o.class &&
253
- channel_id == o.channel_id &&
254
- collecting == o.collecting &&
255
- last_collected_at == o.last_collected_at &&
256
- latest == o.latest &&
257
- permalink == o.permalink &&
258
- published_at == o.published_at &&
259
- snapshots == o.snapshots &&
260
- target_id == o.target_id
261
- end
262
-
263
- # @see the `==` method
264
- # @param [Object] Object to be compared
265
- def eql?(o)
266
- self == o
267
- end
268
-
269
- # Calculates hash code according to all attributes.
270
- # @return [Integer] Hash code
271
- def hash
272
- [channel_id, collecting, last_collected_at, latest, permalink, published_at, snapshots, target_id].hash
273
- end
274
-
275
- # Builds the object from hash
276
- # @param [Hash] attributes Model attributes in the form of hash
277
- # @return [Object] Returns the model itself
278
- def self.build_from_hash(attributes)
279
- return nil unless attributes.is_a?(Hash)
280
- attributes = attributes.transform_keys(&:to_sym)
281
- # include attributes inherited from allOf parents (the nearest declaration wins)
282
- map = acceptable_attribute_map
283
- transformed_hash = {}
284
- acceptable_openapi_types.each_pair do |key, type|
285
- if attributes.key?(map[key]) && attributes[map[key]].nil?
286
- transformed_hash["#{key}"] = nil
287
- elsif type =~ /\AArray<(.*)>/i
288
- # check to ensure the input is an array given that the attribute
289
- # is documented as an array but the input is not
290
- if attributes[map[key]].is_a?(Array)
291
- transformed_hash["#{key}"] = attributes[map[key]].map { |v| _deserialize($1, v) }
292
- end
293
- elsif !attributes[map[key]].nil?
294
- transformed_hash["#{key}"] = _deserialize(type, attributes[map[key]])
295
- end
296
- end
297
- new(transformed_hash)
298
- end
299
-
300
- # Returns the object in the form of hash
301
- # @return [Hash] Returns the object in the form of hash
302
- def to_hash
303
- hash = {}
304
- # include attributes inherited from allOf parents (the nearest declaration wins)
305
- self.class.acceptable_attribute_map.each_pair do |attr, param|
306
- value = self.send(attr)
307
- if value.nil?
308
- is_nullable = self.class.acceptable_openapi_nullable.include?(attr)
309
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
310
- end
311
-
312
- hash[param] = _to_hash(value)
313
- end
314
- hash
315
- end
316
-
317
- end
318
-
319
- end
@@ -1,104 +0,0 @@
1
- =begin
2
- #Peal API
3
-
4
- #Schedule posts across social platforms, follow how they did, and manage a Peal workspace's channels, media and members.
5
-
6
- The version of the OpenAPI document: 0.0.1
7
- Contact: hello@peal.social
8
- Generated by: https://openapi-generator.tech
9
- Generator version: 7.27.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module Peal
17
- # What a post says on a channel that only its platform knows, tagged by `platform`. Platforms without options take none.
18
- module TargetOptions
19
- class << self
20
- # List of class defined in anyOf (OpenAPI v3)
21
- def openapi_any_of
22
- [
23
- :'TikTokOptions',
24
- :'YouTubeOptions'
25
- ]
26
- end
27
-
28
- # Builds the object
29
- # @param [Mixed] Data to be matched against the list of anyOf items
30
- # @return [Object] Returns the model or the data itself
31
- def build(data)
32
- # Go through the list of anyOf items and attempt to identify the appropriate one.
33
- # Note:
34
- # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
35
- # due to the way the deserialization is made in the base_object template (it just casts without verifying).
36
- # - TODO: scalar values are de facto behaving as if they were nullable.
37
- # - TODO: logging when debugging is set.
38
- openapi_any_of.each do |klass|
39
- begin
40
- next if klass == :AnyType # "nullable: true"
41
- return find_and_cast_into_type(klass, data)
42
- rescue # rescue all errors so we keep iterating even if the current item lookup raises
43
- end
44
- end
45
-
46
- openapi_any_of.include?(:AnyType) ? data : nil
47
- end
48
-
49
- private
50
-
51
- SchemaMismatchError = Class.new(StandardError)
52
-
53
- # Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
54
- def find_and_cast_into_type(klass, data)
55
- return if data.nil?
56
-
57
- case klass.to_s
58
- when 'Boolean'
59
- return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
60
- when 'Float'
61
- return data if data.instance_of?(Float)
62
- when 'Integer'
63
- return data if data.instance_of?(Integer)
64
- when 'Time'
65
- return Time.parse(data)
66
- when 'Date'
67
- return Date.iso8601(data)
68
- when 'String'
69
- return data if data.instance_of?(String)
70
- when 'Object' # "type: object"
71
- return data if data.instance_of?(Hash)
72
- when /\AArray<(?<sub_type>.+)>\z/ # "type: array"
73
- if data.instance_of?(Array)
74
- sub_type = Regexp.last_match[:sub_type]
75
- return data.map { |item| find_and_cast_into_type(sub_type, item) }
76
- end
77
- when /\AHash<String, (?<sub_type>.+)>\z/ # "type: object" with "additionalProperties: { ... }"
78
- if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
79
- sub_type = Regexp.last_match[:sub_type]
80
- return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
81
- end
82
- else # model
83
- const = Peal.const_get(klass)
84
- if const
85
- if const.respond_to?(:openapi_any_of) # nested anyOf model
86
- model = const.build(data)
87
- return model if model
88
- else
89
- # raise if data contains keys that are not known to the model
90
- raise if const.respond_to?(:acceptable_attributes) && !(data.keys - const.acceptable_attributes).empty?
91
- model = const.build_from_hash(data)
92
- return model if model
93
- end
94
- end
95
- end
96
-
97
- raise # if no match by now, raise
98
- rescue
99
- raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
100
- end
101
- end
102
- end
103
-
104
- end
@@ -1,227 +0,0 @@
1
- =begin
2
- #Peal API
3
-
4
- #Schedule posts across social platforms, follow how they did, and manage a Peal workspace's channels, media and members.
5
-
6
- The version of the OpenAPI document: 0.0.1
7
- Contact: hello@peal.social
8
- Generated by: https://openapi-generator.tech
9
- Generator version: 7.27.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module Peal
17
- class TargetStatusConflictEncoded < ApiModelBase
18
- attr_accessor :_tag
19
-
20
- attr_accessor :status
21
-
22
- class EnumAttributeValidator
23
- attr_reader :datatype
24
- attr_reader :allowable_values
25
-
26
- def initialize(datatype, allowable_values)
27
- @allowable_values = allowable_values.map do |value|
28
- case datatype.to_s
29
- when /Integer/i
30
- value.to_i
31
- when /Float/i
32
- value.to_f
33
- else
34
- value
35
- end
36
- end
37
- end
38
-
39
- def valid?(value)
40
- !value || allowable_values.include?(value)
41
- end
42
- end
43
-
44
- # Attribute mapping from ruby-style variable name to JSON key.
45
- def self.attribute_map
46
- {
47
- :'_tag' => :'_tag',
48
- :'status' => :'status'
49
- }
50
- end
51
-
52
- # Returns attribute mapping this model knows about
53
- def self.acceptable_attribute_map
54
- attribute_map
55
- end
56
-
57
- # Returns all the JSON keys this model knows about
58
- def self.acceptable_attributes
59
- acceptable_attribute_map.values
60
- end
61
-
62
- # Attribute type mapping.
63
- def self.openapi_types
64
- {
65
- :'_tag' => :'String',
66
- :'status' => :'PostTargetStatus'
67
- }
68
- end
69
-
70
- # List of attributes with nullable: true
71
- def self.openapi_nullable
72
- Set.new([
73
- ])
74
- end
75
-
76
- # Returns attribute type mapping
77
- def self.acceptable_openapi_types
78
- openapi_types
79
- end
80
-
81
- # Returns the nullable attributes
82
- def self.acceptable_openapi_nullable
83
- openapi_nullable
84
- end
85
-
86
- # Initializes the object
87
- # @param [Hash] attributes Model attributes in the form of hash
88
- def initialize(attributes = {})
89
- if (!attributes.is_a?(Hash))
90
- fail ArgumentError, "The input argument (attributes) must be a hash in `Peal::TargetStatusConflictEncoded` initialize method"
91
- end
92
-
93
- # check to see if the attribute exists and convert string to symbol for hash key
94
- acceptable_attribute_map = self.class.acceptable_attribute_map
95
- attributes = attributes.each_with_object({}) { |(k, v), h|
96
- if (!acceptable_attribute_map.key?(k.to_sym))
97
- fail ArgumentError, "`#{k}` is not a valid attribute in `Peal::TargetStatusConflictEncoded`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
98
- end
99
- h[k.to_sym] = v
100
- }
101
-
102
- if attributes.key?(:'_tag')
103
- self._tag = attributes[:'_tag']
104
- else
105
- self._tag = nil
106
- end
107
-
108
- if attributes.key?(:'status')
109
- self.status = attributes[:'status']
110
- else
111
- self.status = nil
112
- end
113
- end
114
-
115
- # Show invalid properties with the reasons. Usually used together with valid?
116
- # @return Array for valid properties with the reasons
117
- def list_invalid_properties
118
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
119
- invalid_properties = Array.new
120
- if @_tag.nil?
121
- invalid_properties.push('invalid value for "_tag", _tag cannot be nil.')
122
- end
123
-
124
- if @status.nil?
125
- invalid_properties.push('invalid value for "status", status cannot be nil.')
126
- end
127
-
128
- invalid_properties
129
- end
130
-
131
- # Check to see if the all the properties in the model are valid
132
- # @return true if the model is valid
133
- def valid?
134
- warn '[DEPRECATED] the `valid?` method is obsolete'
135
- return false if @_tag.nil?
136
- _tag_validator = EnumAttributeValidator.new('String', ["TargetStatusConflict"])
137
- return false unless _tag_validator.valid?(@_tag)
138
- return false if @status.nil?
139
- true
140
- end
141
-
142
- # Custom attribute writer method checking allowed values (enum).
143
- # @param [Object] _tag Object to be assigned
144
- def _tag=(_tag)
145
- validator = EnumAttributeValidator.new('String', ["TargetStatusConflict"])
146
- unless validator.valid?(_tag)
147
- fail ArgumentError, "invalid value for \"_tag\", must be one of #{validator.allowable_values}."
148
- end
149
- @_tag = _tag
150
- end
151
-
152
- # Custom attribute writer method with validation
153
- # @param [Object] status Value to be assigned
154
- def status=(status)
155
- if status.nil?
156
- fail ArgumentError, 'status cannot be nil'
157
- end
158
-
159
- @status = status
160
- end
161
-
162
- # Checks equality by comparing each attribute.
163
- # @param [Object] Object to be compared
164
- def ==(o)
165
- return true if self.equal?(o)
166
- self.class == o.class &&
167
- _tag == o._tag &&
168
- status == o.status
169
- end
170
-
171
- # @see the `==` method
172
- # @param [Object] Object to be compared
173
- def eql?(o)
174
- self == o
175
- end
176
-
177
- # Calculates hash code according to all attributes.
178
- # @return [Integer] Hash code
179
- def hash
180
- [_tag, status].hash
181
- end
182
-
183
- # Builds the object from hash
184
- # @param [Hash] attributes Model attributes in the form of hash
185
- # @return [Object] Returns the model itself
186
- def self.build_from_hash(attributes)
187
- return nil unless attributes.is_a?(Hash)
188
- attributes = attributes.transform_keys(&:to_sym)
189
- # include attributes inherited from allOf parents (the nearest declaration wins)
190
- map = acceptable_attribute_map
191
- transformed_hash = {}
192
- acceptable_openapi_types.each_pair do |key, type|
193
- if attributes.key?(map[key]) && attributes[map[key]].nil?
194
- transformed_hash["#{key}"] = nil
195
- elsif type =~ /\AArray<(.*)>/i
196
- # check to ensure the input is an array given that the attribute
197
- # is documented as an array but the input is not
198
- if attributes[map[key]].is_a?(Array)
199
- transformed_hash["#{key}"] = attributes[map[key]].map { |v| _deserialize($1, v) }
200
- end
201
- elsif !attributes[map[key]].nil?
202
- transformed_hash["#{key}"] = _deserialize(type, attributes[map[key]])
203
- end
204
- end
205
- new(transformed_hash)
206
- end
207
-
208
- # Returns the object in the form of hash
209
- # @return [Hash] Returns the object in the form of hash
210
- def to_hash
211
- hash = {}
212
- # include attributes inherited from allOf parents (the nearest declaration wins)
213
- self.class.acceptable_attribute_map.each_pair do |attr, param|
214
- value = self.send(attr)
215
- if value.nil?
216
- is_nullable = self.class.acceptable_openapi_nullable.include?(attr)
217
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
218
- end
219
-
220
- hash[param] = _to_hash(value)
221
- end
222
- hash
223
- end
224
-
225
- end
226
-
227
- end