twitter-openapi-python-generated 0.0.14__py3-none-any.whl → 0.0.16__py3-none-any.whl

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 (301) hide show
  1. twitter_openapi_python_generated/__init__.py +28 -1
  2. twitter_openapi_python_generated/api/default_api.py +23 -6
  3. twitter_openapi_python_generated/api/other_api.py +3 -3
  4. twitter_openapi_python_generated/api/post_api.py +691 -77
  5. twitter_openapi_python_generated/api/tweet_api.py +33 -33
  6. twitter_openapi_python_generated/api/user_api.py +6 -6
  7. twitter_openapi_python_generated/api/user_list_api.py +15 -15
  8. twitter_openapi_python_generated/api/users_api.py +3 -3
  9. twitter_openapi_python_generated/api/v11_get_api.py +6 -6
  10. twitter_openapi_python_generated/api/v11_post_api.py +6 -6
  11. twitter_openapi_python_generated/api/v20_get_api.py +3 -3
  12. twitter_openapi_python_generated/api_client.py +36 -24
  13. twitter_openapi_python_generated/configuration.py +14 -14
  14. twitter_openapi_python_generated/models/__init__.py +27 -0
  15. twitter_openapi_python_generated/models/additional_media_info.py +6 -6
  16. twitter_openapi_python_generated/models/additional_media_info_call_to_actions.py +6 -6
  17. twitter_openapi_python_generated/models/additional_media_info_call_to_actions_url.py +6 -6
  18. twitter_openapi_python_generated/models/allow_download_status.py +88 -0
  19. twitter_openapi_python_generated/models/article.py +92 -0
  20. twitter_openapi_python_generated/models/article_cover_media.py +106 -0
  21. twitter_openapi_python_generated/models/article_cover_media_color_info.py +96 -0
  22. twitter_openapi_python_generated/models/article_cover_media_color_info_palette.py +94 -0
  23. twitter_openapi_python_generated/models/article_cover_media_color_info_palette_rgb.py +92 -0
  24. twitter_openapi_python_generated/models/article_cover_media_info.py +101 -0
  25. twitter_openapi_python_generated/models/article_lifecycle_state.py +88 -0
  26. twitter_openapi_python_generated/models/article_metadata.py +88 -0
  27. twitter_openapi_python_generated/models/article_result.py +120 -0
  28. twitter_openapi_python_generated/models/article_results.py +92 -0
  29. twitter_openapi_python_generated/models/author_community_relationship.py +6 -6
  30. twitter_openapi_python_generated/models/birdwatch_entity.py +6 -6
  31. twitter_openapi_python_generated/models/birdwatch_entity_ref.py +6 -6
  32. twitter_openapi_python_generated/models/birdwatch_pivot.py +6 -6
  33. twitter_openapi_python_generated/models/birdwatch_pivot_call_to_action.py +6 -6
  34. twitter_openapi_python_generated/models/birdwatch_pivot_footer.py +6 -6
  35. twitter_openapi_python_generated/models/birdwatch_pivot_note.py +6 -6
  36. twitter_openapi_python_generated/models/birdwatch_pivot_subtitle.py +6 -6
  37. twitter_openapi_python_generated/models/bookmarks_response.py +6 -6
  38. twitter_openapi_python_generated/models/bookmarks_response_data.py +6 -6
  39. twitter_openapi_python_generated/models/bookmarks_timeline.py +6 -6
  40. twitter_openapi_python_generated/models/callback.py +6 -6
  41. twitter_openapi_python_generated/models/client_event_info.py +6 -6
  42. twitter_openapi_python_generated/models/communities_actions.py +6 -6
  43. twitter_openapi_python_generated/models/community.py +6 -6
  44. twitter_openapi_python_generated/models/community_actions.py +6 -6
  45. twitter_openapi_python_generated/models/community_data.py +6 -6
  46. twitter_openapi_python_generated/models/community_delete_action_result.py +6 -6
  47. twitter_openapi_python_generated/models/community_invites_result.py +6 -6
  48. twitter_openapi_python_generated/models/community_join_action_result.py +6 -6
  49. twitter_openapi_python_generated/models/community_join_requests_result.py +6 -6
  50. twitter_openapi_python_generated/models/community_leave_action_result.py +6 -6
  51. twitter_openapi_python_generated/models/community_pin_action_result.py +6 -6
  52. twitter_openapi_python_generated/models/community_rule.py +6 -6
  53. twitter_openapi_python_generated/models/community_urls.py +6 -6
  54. twitter_openapi_python_generated/models/community_urls_permalink.py +6 -6
  55. twitter_openapi_python_generated/models/content_union.py +7 -7
  56. twitter_openapi_python_generated/models/cover_cta.py +6 -6
  57. twitter_openapi_python_generated/models/create_bookmark_response.py +92 -0
  58. twitter_openapi_python_generated/models/create_bookmark_response_data.py +88 -0
  59. twitter_openapi_python_generated/models/create_retweet.py +6 -6
  60. twitter_openapi_python_generated/models/create_retweet_response.py +6 -6
  61. twitter_openapi_python_generated/models/create_retweet_response_data.py +6 -6
  62. twitter_openapi_python_generated/models/create_retweet_response_result.py +6 -6
  63. twitter_openapi_python_generated/models/create_tweet.py +6 -6
  64. twitter_openapi_python_generated/models/create_tweet_response.py +6 -6
  65. twitter_openapi_python_generated/models/create_tweet_response_data.py +6 -6
  66. twitter_openapi_python_generated/models/create_tweet_response_result.py +6 -6
  67. twitter_openapi_python_generated/models/cta_client_event_info.py +6 -6
  68. twitter_openapi_python_generated/models/delete_bookmark_response.py +92 -0
  69. twitter_openapi_python_generated/models/delete_bookmark_response_data.py +88 -0
  70. twitter_openapi_python_generated/models/delete_retweet.py +6 -6
  71. twitter_openapi_python_generated/models/delete_retweet_response.py +6 -6
  72. twitter_openapi_python_generated/models/delete_retweet_response_data.py +6 -6
  73. twitter_openapi_python_generated/models/delete_retweet_response_result.py +6 -6
  74. twitter_openapi_python_generated/models/delete_tweet_response.py +6 -6
  75. twitter_openapi_python_generated/models/delete_tweet_response_data.py +6 -6
  76. twitter_openapi_python_generated/models/delete_tweet_response_result.py +6 -6
  77. twitter_openapi_python_generated/models/display_treatment.py +6 -6
  78. twitter_openapi_python_generated/models/entities.py +6 -6
  79. twitter_openapi_python_generated/models/error.py +6 -6
  80. twitter_openapi_python_generated/models/error_extensions.py +6 -6
  81. twitter_openapi_python_generated/models/error_response.py +6 -6
  82. twitter_openapi_python_generated/models/errors.py +6 -6
  83. twitter_openapi_python_generated/models/ext_media_availability.py +6 -6
  84. twitter_openapi_python_generated/models/extended_entities.py +6 -6
  85. twitter_openapi_python_generated/models/extensions.py +6 -6
  86. twitter_openapi_python_generated/models/favorite_tweet.py +6 -6
  87. twitter_openapi_python_generated/models/favorite_tweet_response_data.py +6 -6
  88. twitter_openapi_python_generated/models/feedback_info.py +6 -6
  89. twitter_openapi_python_generated/models/follow_response.py +6 -6
  90. twitter_openapi_python_generated/models/follow_response_data.py +6 -6
  91. twitter_openapi_python_generated/models/follow_response_result.py +6 -6
  92. twitter_openapi_python_generated/models/follow_response_user.py +6 -6
  93. twitter_openapi_python_generated/models/follow_timeline.py +6 -6
  94. twitter_openapi_python_generated/models/get_bookmarks200_response.py +7 -7
  95. twitter_openapi_python_generated/models/get_favoriters200_response.py +7 -7
  96. twitter_openapi_python_generated/models/get_followers200_response.py +7 -7
  97. twitter_openapi_python_generated/models/get_home_latest_timeline200_response.py +7 -7
  98. twitter_openapi_python_generated/models/get_likes200_response.py +7 -7
  99. twitter_openapi_python_generated/models/get_list_latest_tweets_timeline200_response.py +7 -7
  100. twitter_openapi_python_generated/models/get_profile_spotlights_query200_response.py +7 -7
  101. twitter_openapi_python_generated/models/get_retweeters200_response.py +7 -7
  102. twitter_openapi_python_generated/models/get_search_timeline200_response.py +7 -7
  103. twitter_openapi_python_generated/models/get_tweet_detail200_response.py +7 -7
  104. twitter_openapi_python_generated/models/get_tweet_result_by_rest_id200_response.py +7 -7
  105. twitter_openapi_python_generated/models/get_user_by_rest_id200_response.py +7 -7
  106. twitter_openapi_python_generated/models/get_user_highlights_tweets200_response.py +7 -7
  107. twitter_openapi_python_generated/models/get_users_by_rest_ids200_response.py +7 -7
  108. twitter_openapi_python_generated/models/highlight.py +6 -6
  109. twitter_openapi_python_generated/models/home_timeline_home.py +6 -6
  110. twitter_openapi_python_generated/models/home_timeline_response_data.py +6 -6
  111. twitter_openapi_python_generated/models/instruction_union.py +7 -7
  112. twitter_openapi_python_generated/models/item_content_union.py +7 -7
  113. twitter_openapi_python_generated/models/item_result.py +6 -6
  114. twitter_openapi_python_generated/models/list_latest_tweets_timeline_response.py +6 -6
  115. twitter_openapi_python_generated/models/list_tweets_timeline.py +6 -6
  116. twitter_openapi_python_generated/models/list_tweets_timeline_data.py +6 -6
  117. twitter_openapi_python_generated/models/list_tweets_timeline_list.py +6 -6
  118. twitter_openapi_python_generated/models/location.py +6 -6
  119. twitter_openapi_python_generated/models/media.py +31 -11
  120. twitter_openapi_python_generated/models/media_extended.py +19 -7
  121. twitter_openapi_python_generated/models/media_original_info.py +6 -6
  122. twitter_openapi_python_generated/models/media_original_info_focus_rect.py +6 -6
  123. twitter_openapi_python_generated/models/media_result.py +88 -0
  124. twitter_openapi_python_generated/models/media_results.py +92 -0
  125. twitter_openapi_python_generated/models/media_size.py +6 -6
  126. twitter_openapi_python_generated/models/media_sizes.py +6 -6
  127. twitter_openapi_python_generated/models/media_stats.py +6 -6
  128. twitter_openapi_python_generated/models/media_video_info.py +6 -6
  129. twitter_openapi_python_generated/models/media_video_info_variant.py +6 -6
  130. twitter_openapi_python_generated/models/media_visibility_results.py +92 -0
  131. twitter_openapi_python_generated/models/media_visibility_results_blurred_image_interstitial.py +99 -0
  132. twitter_openapi_python_generated/models/module_entry.py +6 -6
  133. twitter_openapi_python_generated/models/module_item.py +6 -6
  134. twitter_openapi_python_generated/models/note_tweet.py +6 -6
  135. twitter_openapi_python_generated/models/note_tweet_result.py +6 -6
  136. twitter_openapi_python_generated/models/note_tweet_result_data.py +6 -6
  137. twitter_openapi_python_generated/models/note_tweet_result_media.py +6 -6
  138. twitter_openapi_python_generated/models/note_tweet_result_media_inline_media.py +6 -6
  139. twitter_openapi_python_generated/models/note_tweet_result_rich_text.py +6 -6
  140. twitter_openapi_python_generated/models/note_tweet_result_rich_text_tag.py +6 -6
  141. twitter_openapi_python_generated/models/one_factor_login_eligibility.py +6 -6
  142. twitter_openapi_python_generated/models/other200_response.py +7 -7
  143. twitter_openapi_python_generated/models/other_response.py +6 -6
  144. twitter_openapi_python_generated/models/post_create_bookmark200_response.py +138 -0
  145. twitter_openapi_python_generated/models/post_create_bookmark_request.py +94 -0
  146. twitter_openapi_python_generated/models/post_create_bookmark_request_variables.py +88 -0
  147. twitter_openapi_python_generated/models/post_create_retweet200_response.py +7 -7
  148. twitter_openapi_python_generated/models/post_create_retweet_request.py +6 -6
  149. twitter_openapi_python_generated/models/post_create_retweet_request_variables.py +6 -6
  150. twitter_openapi_python_generated/models/post_create_tweet200_response.py +7 -7
  151. twitter_openapi_python_generated/models/post_create_tweet_request.py +6 -6
  152. twitter_openapi_python_generated/models/post_create_tweet_request_features.py +6 -6
  153. twitter_openapi_python_generated/models/post_create_tweet_request_variables.py +6 -6
  154. twitter_openapi_python_generated/models/post_create_tweet_request_variables_media.py +6 -6
  155. twitter_openapi_python_generated/models/post_create_tweet_request_variables_media_media_entities_inner.py +6 -6
  156. twitter_openapi_python_generated/models/post_create_tweet_request_variables_reply.py +6 -6
  157. twitter_openapi_python_generated/models/post_delete_bookmark200_response.py +138 -0
  158. twitter_openapi_python_generated/models/post_delete_bookmark_request.py +94 -0
  159. twitter_openapi_python_generated/models/post_delete_retweet200_response.py +7 -7
  160. twitter_openapi_python_generated/models/post_delete_retweet_request.py +6 -6
  161. twitter_openapi_python_generated/models/post_delete_retweet_request_variables.py +6 -6
  162. twitter_openapi_python_generated/models/post_delete_tweet200_response.py +7 -7
  163. twitter_openapi_python_generated/models/post_delete_tweet_request.py +6 -6
  164. twitter_openapi_python_generated/models/post_favorite_tweet200_response.py +7 -7
  165. twitter_openapi_python_generated/models/post_favorite_tweet_request.py +6 -6
  166. twitter_openapi_python_generated/models/post_unfavorite_tweet200_response.py +7 -7
  167. twitter_openapi_python_generated/models/post_unfavorite_tweet_request.py +6 -6
  168. twitter_openapi_python_generated/models/primary_community_topic.py +6 -6
  169. twitter_openapi_python_generated/models/profile_response.py +6 -6
  170. twitter_openapi_python_generated/models/profile_response_data.py +6 -6
  171. twitter_openapi_python_generated/models/quoted_ref_result.py +6 -6
  172. twitter_openapi_python_generated/models/quoted_status_permalink.py +6 -6
  173. twitter_openapi_python_generated/models/retweet.py +6 -6
  174. twitter_openapi_python_generated/models/retweet_legacy.py +6 -6
  175. twitter_openapi_python_generated/models/search_by_raw_query.py +6 -6
  176. twitter_openapi_python_generated/models/search_timeline.py +6 -6
  177. twitter_openapi_python_generated/models/search_timeline_data.py +6 -6
  178. twitter_openapi_python_generated/models/search_timeline_response.py +6 -6
  179. twitter_openapi_python_generated/models/self_thread.py +6 -6
  180. twitter_openapi_python_generated/models/sensitive_media_warning.py +6 -6
  181. twitter_openapi_python_generated/models/session.py +6 -6
  182. twitter_openapi_python_generated/models/social_context_landing_url.py +6 -6
  183. twitter_openapi_python_generated/models/social_context_union.py +7 -7
  184. twitter_openapi_python_generated/models/super_follows_reply_user_result.py +6 -6
  185. twitter_openapi_python_generated/models/super_follows_reply_user_result_data.py +6 -6
  186. twitter_openapi_python_generated/models/super_follows_reply_user_result_legacy.py +6 -6
  187. twitter_openapi_python_generated/models/text.py +6 -6
  188. twitter_openapi_python_generated/models/text_entity.py +6 -6
  189. twitter_openapi_python_generated/models/text_entity_ref.py +6 -6
  190. twitter_openapi_python_generated/models/text_highlight.py +6 -6
  191. twitter_openapi_python_generated/models/timeline.py +6 -6
  192. twitter_openapi_python_generated/models/timeline_add_entries.py +6 -6
  193. twitter_openapi_python_generated/models/timeline_add_entry.py +6 -6
  194. twitter_openapi_python_generated/models/timeline_add_to_module.py +6 -6
  195. twitter_openapi_python_generated/models/timeline_clear_cache.py +6 -6
  196. twitter_openapi_python_generated/models/timeline_community.py +6 -6
  197. twitter_openapi_python_generated/models/timeline_cover_behavior.py +6 -6
  198. twitter_openapi_python_generated/models/timeline_general_context.py +6 -6
  199. twitter_openapi_python_generated/models/timeline_half_cover.py +6 -6
  200. twitter_openapi_python_generated/models/timeline_message_prompt.py +6 -6
  201. twitter_openapi_python_generated/models/timeline_pin_entry.py +6 -6
  202. twitter_openapi_python_generated/models/timeline_prompt.py +6 -6
  203. twitter_openapi_python_generated/models/timeline_replace_entry.py +6 -6
  204. twitter_openapi_python_generated/models/timeline_response.py +6 -6
  205. twitter_openapi_python_generated/models/timeline_show_alert.py +6 -6
  206. twitter_openapi_python_generated/models/timeline_show_alert_rich_text.py +6 -6
  207. twitter_openapi_python_generated/models/timeline_show_cover.py +6 -6
  208. twitter_openapi_python_generated/models/timeline_terminate_timeline.py +6 -6
  209. twitter_openapi_python_generated/models/timeline_timeline_cursor.py +6 -6
  210. twitter_openapi_python_generated/models/timeline_timeline_item.py +6 -6
  211. twitter_openapi_python_generated/models/timeline_timeline_module.py +6 -6
  212. twitter_openapi_python_generated/models/timeline_topic_context.py +6 -6
  213. twitter_openapi_python_generated/models/timeline_tweet.py +13 -6
  214. twitter_openapi_python_generated/models/timeline_user.py +6 -6
  215. twitter_openapi_python_generated/models/timeline_v2.py +6 -6
  216. twitter_openapi_python_generated/models/timestamp.py +6 -6
  217. twitter_openapi_python_generated/models/topic_context.py +6 -6
  218. twitter_openapi_python_generated/models/tracing.py +6 -6
  219. twitter_openapi_python_generated/models/tweet.py +13 -7
  220. twitter_openapi_python_generated/models/tweet_card.py +6 -6
  221. twitter_openapi_python_generated/models/tweet_card_legacy.py +6 -6
  222. twitter_openapi_python_generated/models/tweet_card_legacy_binding_value.py +6 -6
  223. twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data.py +6 -6
  224. twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data_image.py +6 -6
  225. twitter_openapi_python_generated/models/tweet_card_platform.py +6 -6
  226. twitter_openapi_python_generated/models/tweet_card_platform_audience.py +6 -6
  227. twitter_openapi_python_generated/models/tweet_card_platform_data.py +6 -6
  228. twitter_openapi_python_generated/models/tweet_card_platform_device.py +6 -6
  229. twitter_openapi_python_generated/models/tweet_detail_response.py +6 -6
  230. twitter_openapi_python_generated/models/tweet_detail_response_data.py +6 -6
  231. twitter_openapi_python_generated/models/tweet_edit_control.py +6 -6
  232. twitter_openapi_python_generated/models/tweet_edit_control_initial.py +6 -6
  233. twitter_openapi_python_generated/models/tweet_edit_prespective.py +6 -6
  234. twitter_openapi_python_generated/models/tweet_favoriters_response.py +6 -6
  235. twitter_openapi_python_generated/models/tweet_favoriters_response_data.py +6 -6
  236. twitter_openapi_python_generated/models/tweet_interstitial.py +6 -6
  237. twitter_openapi_python_generated/models/tweet_interstitial_reveal_text.py +6 -6
  238. twitter_openapi_python_generated/models/tweet_interstitial_text.py +6 -6
  239. twitter_openapi_python_generated/models/tweet_interstitial_text_entity.py +6 -6
  240. twitter_openapi_python_generated/models/tweet_interstitial_text_entity_ref.py +6 -6
  241. twitter_openapi_python_generated/models/tweet_legacy.py +6 -6
  242. twitter_openapi_python_generated/models/tweet_legacy_scopes.py +6 -6
  243. twitter_openapi_python_generated/models/tweet_previous_counts.py +6 -6
  244. twitter_openapi_python_generated/models/tweet_result_by_rest_id_data.py +6 -6
  245. twitter_openapi_python_generated/models/tweet_result_by_rest_id_response.py +6 -6
  246. twitter_openapi_python_generated/models/tweet_retweeters_response.py +6 -6
  247. twitter_openapi_python_generated/models/tweet_retweeters_response_data.py +6 -6
  248. twitter_openapi_python_generated/models/tweet_tombstone.py +6 -6
  249. twitter_openapi_python_generated/models/tweet_union.py +7 -7
  250. twitter_openapi_python_generated/models/tweet_view.py +6 -6
  251. twitter_openapi_python_generated/models/tweet_with_visibility_results.py +13 -7
  252. twitter_openapi_python_generated/models/type_name.py +1 -0
  253. twitter_openapi_python_generated/models/unfavorite_tweet.py +6 -6
  254. twitter_openapi_python_generated/models/unfavorite_tweet_response_data.py +6 -6
  255. twitter_openapi_python_generated/models/unified_card.py +6 -6
  256. twitter_openapi_python_generated/models/url.py +8 -8
  257. twitter_openapi_python_generated/models/urt_endpoint_options.py +6 -6
  258. twitter_openapi_python_generated/models/urt_endpoint_request_params.py +6 -6
  259. twitter_openapi_python_generated/models/user.py +19 -7
  260. twitter_openapi_python_generated/models/user_features.py +6 -6
  261. twitter_openapi_python_generated/models/user_highlights_info.py +6 -6
  262. twitter_openapi_python_generated/models/user_highlights_tweets_data.py +6 -6
  263. twitter_openapi_python_generated/models/user_highlights_tweets_response.py +6 -6
  264. twitter_openapi_python_generated/models/user_highlights_tweets_result.py +6 -6
  265. twitter_openapi_python_generated/models/user_highlights_tweets_timeline.py +6 -6
  266. twitter_openapi_python_generated/models/user_highlights_tweets_user.py +6 -6
  267. twitter_openapi_python_generated/models/user_legacy.py +6 -6
  268. twitter_openapi_python_generated/models/user_legacy_extended_profile.py +92 -0
  269. twitter_openapi_python_generated/models/user_legacy_extended_profile_birthdate.py +110 -0
  270. twitter_openapi_python_generated/models/user_professional.py +6 -6
  271. twitter_openapi_python_generated/models/user_professional_category.py +6 -6
  272. twitter_openapi_python_generated/models/user_response.py +6 -6
  273. twitter_openapi_python_generated/models/user_response_data.py +6 -6
  274. twitter_openapi_python_generated/models/user_result_by_screen_name.py +6 -6
  275. twitter_openapi_python_generated/models/user_result_by_screen_name_legacy.py +6 -6
  276. twitter_openapi_python_generated/models/user_result_by_screen_name_result.py +6 -6
  277. twitter_openapi_python_generated/models/user_result_core.py +6 -6
  278. twitter_openapi_python_generated/models/user_results.py +6 -6
  279. twitter_openapi_python_generated/models/user_tip_jar_settings.py +100 -0
  280. twitter_openapi_python_generated/models/user_tweets_data.py +6 -6
  281. twitter_openapi_python_generated/models/user_tweets_response.py +6 -6
  282. twitter_openapi_python_generated/models/user_tweets_result.py +6 -6
  283. twitter_openapi_python_generated/models/user_tweets_user.py +6 -6
  284. twitter_openapi_python_generated/models/user_unavailable.py +6 -6
  285. twitter_openapi_python_generated/models/user_union.py +7 -7
  286. twitter_openapi_python_generated/models/user_value.py +6 -6
  287. twitter_openapi_python_generated/models/user_verification_info.py +6 -6
  288. twitter_openapi_python_generated/models/user_verification_info_reason.py +6 -6
  289. twitter_openapi_python_generated/models/user_verification_info_reason_description.py +6 -6
  290. twitter_openapi_python_generated/models/user_verification_info_reason_description_entities.py +6 -6
  291. twitter_openapi_python_generated/models/user_verification_info_reason_description_entities_ref.py +6 -6
  292. twitter_openapi_python_generated/models/users_response.py +6 -6
  293. twitter_openapi_python_generated/models/users_response_data.py +6 -6
  294. twitter_openapi_python_generated/rest.py +2 -0
  295. {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/METADATA +1 -1
  296. twitter_openapi_python_generated-0.0.16.dist-info/RECORD +310 -0
  297. twitter_openapi_python_generated-0.0.14.dist-info/RECORD +0 -283
  298. {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/LICENSE +0 -0
  299. {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/LICENSE.AGPL +0 -0
  300. {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/WHEEL +0 -0
  301. {twitter_openapi_python_generated-0.0.14.dist-info → twitter_openapi_python_generated-0.0.16.dist-info}/top_level.txt +0 -0
@@ -23,7 +23,8 @@ import re
23
23
  import tempfile
24
24
 
25
25
  from urllib.parse import quote
26
- from typing import Tuple, Optional, List, Dict
26
+ from typing import Tuple, Optional, List, Dict, Union
27
+ from pydantic import SecretStr
27
28
 
28
29
  from twitter_openapi_python_generated.configuration import Configuration
29
30
  from twitter_openapi_python_generated.api_response import ApiResponse, T as ApiResponseT
@@ -88,7 +89,7 @@ class ApiClient:
88
89
  self.default_headers[header_name] = header_value
89
90
  self.cookie = cookie
90
91
  # Set default User-Agent.
91
- self.user_agent = 'OpenAPI-Generator/0.0.14/python'
92
+ self.user_agent = 'OpenAPI-Generator/0.0.16/python'
92
93
  self.client_side_validation = configuration.client_side_validation
93
94
 
94
95
  def __enter__(self):
@@ -208,7 +209,8 @@ class ApiClient:
208
209
  post_params,
209
210
  collection_formats
210
211
  )
211
- post_params.extend(self.files_parameters(files))
212
+ if files:
213
+ post_params.extend(self.files_parameters(files))
212
214
 
213
215
  # auth setting
214
216
  self.update_params_for_auth(
@@ -313,7 +315,10 @@ class ApiClient:
313
315
  match = re.search(r"charset=([a-zA-Z\-\d]+)[\s;]?", content_type)
314
316
  encoding = match.group(1) if match else "utf-8"
315
317
  response_text = response_data.data.decode(encoding)
316
- return_data = self.deserialize(response_text, response_type)
318
+ if response_type in ["bytearray", "str"]:
319
+ return_data = self.__deserialize_primitive(response_text, response_type)
320
+ else:
321
+ return_data = self.deserialize(response_text, response_type)
317
322
  finally:
318
323
  if not 200 <= response_data.status <= 299:
319
324
  raise ApiException.from_response(
@@ -333,6 +338,7 @@ class ApiClient:
333
338
  """Builds a JSON POST object.
334
339
 
335
340
  If obj is None, return None.
341
+ If obj is SecretStr, return obj.get_secret_value()
336
342
  If obj is str, int, long, float, bool, return directly.
337
343
  If obj is datetime.datetime, datetime.date
338
344
  convert to string in iso8601 format.
@@ -345,6 +351,10 @@ class ApiClient:
345
351
  """
346
352
  if obj is None:
347
353
  return None
354
+ elif isinstance(obj, Enum):
355
+ return obj.value
356
+ elif isinstance(obj, SecretStr):
357
+ return obj.get_secret_value()
348
358
  elif isinstance(obj, self.PRIMITIVE_TYPES):
349
359
  return obj
350
360
  elif isinstance(obj, list):
@@ -366,7 +376,10 @@ class ApiClient:
366
376
  # and attributes which value is not None.
367
377
  # Convert attribute name to json key in
368
378
  # model definition for request.
369
- obj_dict = obj.to_dict()
379
+ if hasattr(obj, 'to_dict') and callable(getattr(obj, 'to_dict')):
380
+ obj_dict = obj.to_dict()
381
+ else:
382
+ obj_dict = obj.__dict__
370
383
 
371
384
  return {
372
385
  key: self.sanitize_for_serialization(val)
@@ -505,31 +518,30 @@ class ApiClient:
505
518
 
506
519
  return "&".join(["=".join(map(str, item)) for item in new_params])
507
520
 
508
- def files_parameters(self, files=None):
521
+ def files_parameters(self, files: Dict[str, Union[str, bytes]]):
509
522
  """Builds form parameters.
510
523
 
511
524
  :param files: File parameters.
512
525
  :return: Form parameters with files.
513
526
  """
514
527
  params = []
515
-
516
- if files:
517
- for k, v in files.items():
518
- if not v:
519
- continue
520
- file_names = v if type(v) is list else [v]
521
- for n in file_names:
522
- with open(n, 'rb') as f:
523
- filename = os.path.basename(f.name)
524
- filedata = f.read()
525
- mimetype = (
526
- mimetypes.guess_type(filename)[0]
527
- or 'application/octet-stream'
528
- )
529
- params.append(
530
- tuple([k, tuple([filename, filedata, mimetype])])
531
- )
532
-
528
+ for k, v in files.items():
529
+ if isinstance(v, str):
530
+ with open(v, 'rb') as f:
531
+ filename = os.path.basename(f.name)
532
+ filedata = f.read()
533
+ elif isinstance(v, bytes):
534
+ filename = k
535
+ filedata = v
536
+ else:
537
+ raise ValueError("Unsupported file value")
538
+ mimetype = (
539
+ mimetypes.guess_type(filename)[0]
540
+ or 'application/octet-stream'
541
+ )
542
+ params.append(
543
+ tuple([k, tuple([filename, filedata, mimetype])])
544
+ )
533
545
  return params
534
546
 
535
547
  def select_header_accept(self, accepts: List[str]) -> Optional[str]:
@@ -432,15 +432,6 @@ conf = twitter_openapi_python_generated.Configuration(
432
432
  'key': 'Authorization',
433
433
  'value': 'Bearer ' + self.access_token
434
434
  }
435
- if 'CacheControl' in self.api_key:
436
- auth['CacheControl'] = {
437
- 'type': 'api_key',
438
- 'in': 'header',
439
- 'key': 'Cache-Control',
440
- 'value': self.get_api_key_with_prefix(
441
- 'CacheControl',
442
- ),
443
- }
444
435
  if 'ClientLanguage' in self.api_key:
445
436
  auth['ClientLanguage'] = {
446
437
  'type': 'api_key',
@@ -486,13 +477,22 @@ conf = twitter_openapi_python_generated.Configuration(
486
477
  'GuestToken',
487
478
  ),
488
479
  }
489
- if 'Pragma' in self.api_key:
490
- auth['Pragma'] = {
480
+ if 'Priority' in self.api_key:
481
+ auth['Priority'] = {
482
+ 'type': 'api_key',
483
+ 'in': 'header',
484
+ 'key': 'Priority',
485
+ 'value': self.get_api_key_with_prefix(
486
+ 'Priority',
487
+ ),
488
+ }
489
+ if 'Referer' in self.api_key:
490
+ auth['Referer'] = {
491
491
  'type': 'api_key',
492
492
  'in': 'header',
493
- 'key': 'Pragma',
493
+ 'key': 'Referer',
494
494
  'value': self.get_api_key_with_prefix(
495
- 'Pragma',
495
+ 'Referer',
496
496
  ),
497
497
  }
498
498
  if 'SecChUa' in self.api_key:
@@ -569,7 +569,7 @@ conf = twitter_openapi_python_generated.Configuration(
569
569
  "OS: {env}\n"\
570
570
  "Python Version: {pyversion}\n"\
571
571
  "Version of the API: 0.0.1\n"\
572
- "SDK Package Version: 0.0.14".\
572
+ "SDK Package Version: 0.0.16".\
573
573
  format(env=sys.platform, pyversion=sys.version)
574
574
 
575
575
  def get_host_settings(self):
@@ -18,6 +18,17 @@
18
18
  from twitter_openapi_python_generated.models.additional_media_info import AdditionalMediaInfo
19
19
  from twitter_openapi_python_generated.models.additional_media_info_call_to_actions import AdditionalMediaInfoCallToActions
20
20
  from twitter_openapi_python_generated.models.additional_media_info_call_to_actions_url import AdditionalMediaInfoCallToActionsUrl
21
+ from twitter_openapi_python_generated.models.allow_download_status import AllowDownloadStatus
22
+ from twitter_openapi_python_generated.models.article import Article
23
+ from twitter_openapi_python_generated.models.article_cover_media import ArticleCoverMedia
24
+ from twitter_openapi_python_generated.models.article_cover_media_color_info import ArticleCoverMediaColorInfo
25
+ from twitter_openapi_python_generated.models.article_cover_media_color_info_palette import ArticleCoverMediaColorInfoPalette
26
+ from twitter_openapi_python_generated.models.article_cover_media_color_info_palette_rgb import ArticleCoverMediaColorInfoPaletteRGB
27
+ from twitter_openapi_python_generated.models.article_cover_media_info import ArticleCoverMediaInfo
28
+ from twitter_openapi_python_generated.models.article_lifecycle_state import ArticleLifecycleState
29
+ from twitter_openapi_python_generated.models.article_metadata import ArticleMetadata
30
+ from twitter_openapi_python_generated.models.article_result import ArticleResult
31
+ from twitter_openapi_python_generated.models.article_results import ArticleResults
21
32
  from twitter_openapi_python_generated.models.author_community_relationship import AuthorCommunityRelationship
22
33
  from twitter_openapi_python_generated.models.birdwatch_entity import BirdwatchEntity
23
34
  from twitter_openapi_python_generated.models.birdwatch_entity_ref import BirdwatchEntityRef
@@ -48,6 +59,8 @@ from twitter_openapi_python_generated.models.content_entry_type import ContentEn
48
59
  from twitter_openapi_python_generated.models.content_item_type import ContentItemType
49
60
  from twitter_openapi_python_generated.models.content_union import ContentUnion
50
61
  from twitter_openapi_python_generated.models.cover_cta import CoverCta
62
+ from twitter_openapi_python_generated.models.create_bookmark_response import CreateBookmarkResponse
63
+ from twitter_openapi_python_generated.models.create_bookmark_response_data import CreateBookmarkResponseData
51
64
  from twitter_openapi_python_generated.models.create_retweet import CreateRetweet
52
65
  from twitter_openapi_python_generated.models.create_retweet_response import CreateRetweetResponse
53
66
  from twitter_openapi_python_generated.models.create_retweet_response_data import CreateRetweetResponseData
@@ -58,6 +71,8 @@ from twitter_openapi_python_generated.models.create_tweet_response_data import C
58
71
  from twitter_openapi_python_generated.models.create_tweet_response_result import CreateTweetResponseResult
59
72
  from twitter_openapi_python_generated.models.cta_client_event_info import CtaClientEventInfo
60
73
  from twitter_openapi_python_generated.models.cursor_type import CursorType
74
+ from twitter_openapi_python_generated.models.delete_bookmark_response import DeleteBookmarkResponse
75
+ from twitter_openapi_python_generated.models.delete_bookmark_response_data import DeleteBookmarkResponseData
61
76
  from twitter_openapi_python_generated.models.delete_retweet import DeleteRetweet
62
77
  from twitter_openapi_python_generated.models.delete_retweet_response import DeleteRetweetResponse
63
78
  from twitter_openapi_python_generated.models.delete_retweet_response_data import DeleteRetweetResponseData
@@ -113,11 +128,15 @@ from twitter_openapi_python_generated.models.media import Media
113
128
  from twitter_openapi_python_generated.models.media_extended import MediaExtended
114
129
  from twitter_openapi_python_generated.models.media_original_info import MediaOriginalInfo
115
130
  from twitter_openapi_python_generated.models.media_original_info_focus_rect import MediaOriginalInfoFocusRect
131
+ from twitter_openapi_python_generated.models.media_result import MediaResult
132
+ from twitter_openapi_python_generated.models.media_results import MediaResults
116
133
  from twitter_openapi_python_generated.models.media_size import MediaSize
117
134
  from twitter_openapi_python_generated.models.media_sizes import MediaSizes
118
135
  from twitter_openapi_python_generated.models.media_stats import MediaStats
119
136
  from twitter_openapi_python_generated.models.media_video_info import MediaVideoInfo
120
137
  from twitter_openapi_python_generated.models.media_video_info_variant import MediaVideoInfoVariant
138
+ from twitter_openapi_python_generated.models.media_visibility_results import MediaVisibilityResults
139
+ from twitter_openapi_python_generated.models.media_visibility_results_blurred_image_interstitial import MediaVisibilityResultsBlurredImageInterstitial
121
140
  from twitter_openapi_python_generated.models.module_entry import ModuleEntry
122
141
  from twitter_openapi_python_generated.models.module_item import ModuleItem
123
142
  from twitter_openapi_python_generated.models.note_tweet import NoteTweet
@@ -130,6 +149,9 @@ from twitter_openapi_python_generated.models.note_tweet_result_rich_text_tag imp
130
149
  from twitter_openapi_python_generated.models.one_factor_login_eligibility import OneFactorLoginEligibility
131
150
  from twitter_openapi_python_generated.models.other200_response import Other200Response
132
151
  from twitter_openapi_python_generated.models.other_response import OtherResponse
152
+ from twitter_openapi_python_generated.models.post_create_bookmark200_response import PostCreateBookmark200Response
153
+ from twitter_openapi_python_generated.models.post_create_bookmark_request import PostCreateBookmarkRequest
154
+ from twitter_openapi_python_generated.models.post_create_bookmark_request_variables import PostCreateBookmarkRequestVariables
133
155
  from twitter_openapi_python_generated.models.post_create_retweet200_response import PostCreateRetweet200Response
134
156
  from twitter_openapi_python_generated.models.post_create_retweet_request import PostCreateRetweetRequest
135
157
  from twitter_openapi_python_generated.models.post_create_retweet_request_variables import PostCreateRetweetRequestVariables
@@ -140,6 +162,8 @@ from twitter_openapi_python_generated.models.post_create_tweet_request_variables
140
162
  from twitter_openapi_python_generated.models.post_create_tweet_request_variables_media import PostCreateTweetRequestVariablesMedia
141
163
  from twitter_openapi_python_generated.models.post_create_tweet_request_variables_media_media_entities_inner import PostCreateTweetRequestVariablesMediaMediaEntitiesInner
142
164
  from twitter_openapi_python_generated.models.post_create_tweet_request_variables_reply import PostCreateTweetRequestVariablesReply
165
+ from twitter_openapi_python_generated.models.post_delete_bookmark200_response import PostDeleteBookmark200Response
166
+ from twitter_openapi_python_generated.models.post_delete_bookmark_request import PostDeleteBookmarkRequest
143
167
  from twitter_openapi_python_generated.models.post_delete_retweet200_response import PostDeleteRetweet200Response
144
168
  from twitter_openapi_python_generated.models.post_delete_retweet_request import PostDeleteRetweetRequest
145
169
  from twitter_openapi_python_generated.models.post_delete_retweet_request_variables import PostDeleteRetweetRequestVariables
@@ -250,6 +274,8 @@ from twitter_openapi_python_generated.models.user_highlights_tweets_result impor
250
274
  from twitter_openapi_python_generated.models.user_highlights_tweets_timeline import UserHighlightsTweetsTimeline
251
275
  from twitter_openapi_python_generated.models.user_highlights_tweets_user import UserHighlightsTweetsUser
252
276
  from twitter_openapi_python_generated.models.user_legacy import UserLegacy
277
+ from twitter_openapi_python_generated.models.user_legacy_extended_profile import UserLegacyExtendedProfile
278
+ from twitter_openapi_python_generated.models.user_legacy_extended_profile_birthdate import UserLegacyExtendedProfileBirthdate
253
279
  from twitter_openapi_python_generated.models.user_professional import UserProfessional
254
280
  from twitter_openapi_python_generated.models.user_professional_category import UserProfessionalCategory
255
281
  from twitter_openapi_python_generated.models.user_response import UserResponse
@@ -259,6 +285,7 @@ from twitter_openapi_python_generated.models.user_result_by_screen_name_legacy i
259
285
  from twitter_openapi_python_generated.models.user_result_by_screen_name_result import UserResultByScreenNameResult
260
286
  from twitter_openapi_python_generated.models.user_result_core import UserResultCore
261
287
  from twitter_openapi_python_generated.models.user_results import UserResults
288
+ from twitter_openapi_python_generated.models.user_tip_jar_settings import UserTipJarSettings
262
289
  from twitter_openapi_python_generated.models.user_tweets_data import UserTweetsData
263
290
  from twitter_openapi_python_generated.models.user_tweets_response import UserTweetsResponse
264
291
  from twitter_openapi_python_generated.models.user_tweets_result import UserTweetsResult
@@ -18,7 +18,7 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, StrictBool, StrictStr
21
+ from pydantic import BaseModel, ConfigDict, StrictBool, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
23
  from twitter_openapi_python_generated.models.additional_media_info_call_to_actions import AdditionalMediaInfoCallToActions
24
24
  from twitter_openapi_python_generated.models.user_result_core import UserResultCore
@@ -37,11 +37,11 @@ class AdditionalMediaInfo(BaseModel):
37
37
  title: Optional[StrictStr] = None
38
38
  __properties: ClassVar[List[str]] = ["call_to_actions", "description", "embeddable", "monetizable", "source_user", "title"]
39
39
 
40
- model_config = {
41
- "populate_by_name": True,
42
- "validate_assignment": True,
43
- "protected_namespaces": (),
44
- }
40
+ model_config = ConfigDict(
41
+ populate_by_name=True,
42
+ validate_assignment=True,
43
+ protected_namespaces=(),
44
+ )
45
45
 
46
46
 
47
47
  def to_str(self) -> str:
@@ -18,7 +18,7 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel
21
+ from pydantic import BaseModel, ConfigDict
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
23
  from twitter_openapi_python_generated.models.additional_media_info_call_to_actions_url import AdditionalMediaInfoCallToActionsUrl
24
24
  from typing import Optional, Set
@@ -32,11 +32,11 @@ class AdditionalMediaInfoCallToActions(BaseModel):
32
32
  watch_now: Optional[AdditionalMediaInfoCallToActionsUrl] = None
33
33
  __properties: ClassVar[List[str]] = ["visit_site", "watch_now"]
34
34
 
35
- model_config = {
36
- "populate_by_name": True,
37
- "validate_assignment": True,
38
- "protected_namespaces": (),
39
- }
35
+ model_config = ConfigDict(
36
+ populate_by_name=True,
37
+ validate_assignment=True,
38
+ protected_namespaces=(),
39
+ )
40
40
 
41
41
 
42
42
  def to_str(self) -> str:
@@ -18,7 +18,7 @@ import pprint
18
18
  import re # noqa: F401
19
19
  import json
20
20
 
21
- from pydantic import BaseModel, StrictStr
21
+ from pydantic import BaseModel, ConfigDict, StrictStr
22
22
  from typing import Any, ClassVar, Dict, List
23
23
  from typing import Optional, Set
24
24
  from typing_extensions import Self
@@ -30,11 +30,11 @@ class AdditionalMediaInfoCallToActionsUrl(BaseModel):
30
30
  url: StrictStr
31
31
  __properties: ClassVar[List[str]] = ["url"]
32
32
 
33
- model_config = {
34
- "populate_by_name": True,
35
- "validate_assignment": True,
36
- "protected_namespaces": (),
37
- }
33
+ model_config = ConfigDict(
34
+ populate_by_name=True,
35
+ validate_assignment=True,
36
+ protected_namespaces=(),
37
+ )
38
38
 
39
39
 
40
40
  def to_str(self) -> str:
@@ -0,0 +1,88 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Twitter OpenAPI
5
+
6
+ Twitter OpenAPI(Swagger) specification
7
+
8
+ The version of the OpenAPI document: 0.0.1
9
+ Contact: yuki@yuki0311.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, ConfigDict, StrictBool
22
+ from typing import Any, ClassVar, Dict, List
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class AllowDownloadStatus(BaseModel):
27
+ """
28
+ AllowDownloadStatus
29
+ """ # noqa: E501
30
+ allow_download: StrictBool
31
+ __properties: ClassVar[List[str]] = ["allow_download"]
32
+
33
+ model_config = ConfigDict(
34
+ populate_by_name=True,
35
+ validate_assignment=True,
36
+ protected_namespaces=(),
37
+ )
38
+
39
+
40
+ def to_str(self) -> str:
41
+ """Returns the string representation of the model using alias"""
42
+ return pprint.pformat(self.model_dump(by_alias=True))
43
+
44
+ def to_json(self) -> str:
45
+ """Returns the JSON representation of the model using alias"""
46
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
47
+ return json.dumps(self.to_dict())
48
+
49
+ @classmethod
50
+ def from_json(cls, json_str: str) -> Optional[Self]:
51
+ """Create an instance of AllowDownloadStatus from a JSON string"""
52
+ return cls.from_dict(json.loads(json_str))
53
+
54
+ def to_dict(self) -> Dict[str, Any]:
55
+ """Return the dictionary representation of the model using alias.
56
+
57
+ This has the following differences from calling pydantic's
58
+ `self.model_dump(by_alias=True)`:
59
+
60
+ * `None` is only added to the output dict for nullable fields that
61
+ were set at model initialization. Other fields with value `None`
62
+ are ignored.
63
+ """
64
+ excluded_fields: Set[str] = set([
65
+ ])
66
+
67
+ _dict = self.model_dump(
68
+ by_alias=True,
69
+ exclude=excluded_fields,
70
+ exclude_none=True,
71
+ )
72
+ return _dict
73
+
74
+ @classmethod
75
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
76
+ """Create an instance of AllowDownloadStatus from a dict"""
77
+ if obj is None:
78
+ return None
79
+
80
+ if not isinstance(obj, dict):
81
+ return cls.model_validate(obj)
82
+
83
+ _obj = cls.model_validate({
84
+ "allow_download": obj.get("allow_download")
85
+ })
86
+ return _obj
87
+
88
+
@@ -0,0 +1,92 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Twitter OpenAPI
5
+
6
+ Twitter OpenAPI(Swagger) specification
7
+
8
+ The version of the OpenAPI document: 0.0.1
9
+ Contact: yuki@yuki0311.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, ConfigDict
22
+ from typing import Any, ClassVar, Dict, List
23
+ from twitter_openapi_python_generated.models.article_results import ArticleResults
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class Article(BaseModel):
28
+ """
29
+ Article
30
+ """ # noqa: E501
31
+ article_results: ArticleResults
32
+ __properties: ClassVar[List[str]] = ["article_results"]
33
+
34
+ model_config = ConfigDict(
35
+ populate_by_name=True,
36
+ validate_assignment=True,
37
+ protected_namespaces=(),
38
+ )
39
+
40
+
41
+ def to_str(self) -> str:
42
+ """Returns the string representation of the model using alias"""
43
+ return pprint.pformat(self.model_dump(by_alias=True))
44
+
45
+ def to_json(self) -> str:
46
+ """Returns the JSON representation of the model using alias"""
47
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
48
+ return json.dumps(self.to_dict())
49
+
50
+ @classmethod
51
+ def from_json(cls, json_str: str) -> Optional[Self]:
52
+ """Create an instance of Article from a JSON string"""
53
+ return cls.from_dict(json.loads(json_str))
54
+
55
+ def to_dict(self) -> Dict[str, Any]:
56
+ """Return the dictionary representation of the model using alias.
57
+
58
+ This has the following differences from calling pydantic's
59
+ `self.model_dump(by_alias=True)`:
60
+
61
+ * `None` is only added to the output dict for nullable fields that
62
+ were set at model initialization. Other fields with value `None`
63
+ are ignored.
64
+ """
65
+ excluded_fields: Set[str] = set([
66
+ ])
67
+
68
+ _dict = self.model_dump(
69
+ by_alias=True,
70
+ exclude=excluded_fields,
71
+ exclude_none=True,
72
+ )
73
+ # override the default output from pydantic by calling `to_dict()` of article_results
74
+ if self.article_results:
75
+ _dict['article_results'] = self.article_results.to_dict()
76
+ return _dict
77
+
78
+ @classmethod
79
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
80
+ """Create an instance of Article from a dict"""
81
+ if obj is None:
82
+ return None
83
+
84
+ if not isinstance(obj, dict):
85
+ return cls.model_validate(obj)
86
+
87
+ _obj = cls.model_validate({
88
+ "article_results": ArticleResults.from_dict(obj["article_results"]) if obj.get("article_results") is not None else None
89
+ })
90
+ return _obj
91
+
92
+
@@ -0,0 +1,106 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Twitter OpenAPI
5
+
6
+ Twitter OpenAPI(Swagger) specification
7
+
8
+ The version of the OpenAPI document: 0.0.1
9
+ Contact: yuki@yuki0311.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
22
+ from typing import Any, ClassVar, Dict, List
23
+ from typing_extensions import Annotated
24
+ from twitter_openapi_python_generated.models.article_cover_media_info import ArticleCoverMediaInfo
25
+ from typing import Optional, Set
26
+ from typing_extensions import Self
27
+
28
+ class ArticleCoverMedia(BaseModel):
29
+ """
30
+ ArticleCoverMedia
31
+ """ # noqa: E501
32
+ id: StrictStr
33
+ media_id: Annotated[str, Field(strict=True)]
34
+ media_info: ArticleCoverMediaInfo
35
+ media_key: StrictStr
36
+ __properties: ClassVar[List[str]] = ["id", "media_id", "media_info", "media_key"]
37
+
38
+ @field_validator('media_id')
39
+ def media_id_validate_regular_expression(cls, value):
40
+ """Validates the regular expression"""
41
+ if not re.match(r"^[0-9]+$", value):
42
+ raise ValueError(r"must validate the regular expression /^[0-9]+$/")
43
+ return value
44
+
45
+ model_config = ConfigDict(
46
+ populate_by_name=True,
47
+ validate_assignment=True,
48
+ protected_namespaces=(),
49
+ )
50
+
51
+
52
+ def to_str(self) -> str:
53
+ """Returns the string representation of the model using alias"""
54
+ return pprint.pformat(self.model_dump(by_alias=True))
55
+
56
+ def to_json(self) -> str:
57
+ """Returns the JSON representation of the model using alias"""
58
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
59
+ return json.dumps(self.to_dict())
60
+
61
+ @classmethod
62
+ def from_json(cls, json_str: str) -> Optional[Self]:
63
+ """Create an instance of ArticleCoverMedia from a JSON string"""
64
+ return cls.from_dict(json.loads(json_str))
65
+
66
+ def to_dict(self) -> Dict[str, Any]:
67
+ """Return the dictionary representation of the model using alias.
68
+
69
+ This has the following differences from calling pydantic's
70
+ `self.model_dump(by_alias=True)`:
71
+
72
+ * `None` is only added to the output dict for nullable fields that
73
+ were set at model initialization. Other fields with value `None`
74
+ are ignored.
75
+ """
76
+ excluded_fields: Set[str] = set([
77
+ ])
78
+
79
+ _dict = self.model_dump(
80
+ by_alias=True,
81
+ exclude=excluded_fields,
82
+ exclude_none=True,
83
+ )
84
+ # override the default output from pydantic by calling `to_dict()` of media_info
85
+ if self.media_info:
86
+ _dict['media_info'] = self.media_info.to_dict()
87
+ return _dict
88
+
89
+ @classmethod
90
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
91
+ """Create an instance of ArticleCoverMedia from a dict"""
92
+ if obj is None:
93
+ return None
94
+
95
+ if not isinstance(obj, dict):
96
+ return cls.model_validate(obj)
97
+
98
+ _obj = cls.model_validate({
99
+ "id": obj.get("id"),
100
+ "media_id": obj.get("media_id"),
101
+ "media_info": ArticleCoverMediaInfo.from_dict(obj["media_info"]) if obj.get("media_info") is not None else None,
102
+ "media_key": obj.get("media_key")
103
+ })
104
+ return _obj
105
+
106
+