twitter-openapi-python-generated 0.0.9__py3-none-any.whl → 0.0.11__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.
- twitter_openapi_python_generated/__init__.py +59 -2
- twitter_openapi_python_generated/api/default_api.py +5 -13
- twitter_openapi_python_generated/api/other_api.py +4 -11
- twitter_openapi_python_generated/api/post_api.py +10 -19
- twitter_openapi_python_generated/api/tweet_api.py +14 -22
- twitter_openapi_python_generated/api/user_api.py +5 -13
- twitter_openapi_python_generated/api/user_list_api.py +8 -16
- twitter_openapi_python_generated/api/users_api.py +4 -12
- twitter_openapi_python_generated/api/v11_get_api.py +5 -13
- twitter_openapi_python_generated/api/v11_post_api.py +5 -13
- twitter_openapi_python_generated/api/v20_get_api.py +4 -12
- twitter_openapi_python_generated/api_client.py +45 -18
- twitter_openapi_python_generated/api_response.py +3 -3
- twitter_openapi_python_generated/configuration.py +5 -3
- twitter_openapi_python_generated/exceptions.py +0 -1
- twitter_openapi_python_generated/models/__init__.py +58 -1
- twitter_openapi_python_generated/models/additional_media_info.py +30 -13
- twitter_openapi_python_generated/models/additional_media_info_call_to_actions.py +92 -0
- twitter_openapi_python_generated/models/additional_media_info_call_to_actions_visit_site.py +88 -0
- twitter_openapi_python_generated/models/author_community_relationship.py +110 -0
- twitter_openapi_python_generated/models/birdwatch_entity.py +10 -12
- twitter_openapi_python_generated/models/birdwatch_entity_ref.py +11 -13
- twitter_openapi_python_generated/models/birdwatch_pivot.py +21 -17
- twitter_openapi_python_generated/models/birdwatch_pivot_call_to_action.py +92 -0
- twitter_openapi_python_generated/models/birdwatch_pivot_footer.py +10 -11
- twitter_openapi_python_generated/models/birdwatch_pivot_note.py +9 -11
- twitter_openapi_python_generated/models/birdwatch_pivot_subtitle.py +10 -11
- twitter_openapi_python_generated/models/bookmarks_response.py +10 -11
- twitter_openapi_python_generated/models/bookmarks_response_data.py +10 -11
- twitter_openapi_python_generated/models/bookmarks_timeline.py +10 -11
- twitter_openapi_python_generated/models/callback.py +9 -10
- twitter_openapi_python_generated/models/client_event_info.py +9 -10
- twitter_openapi_python_generated/models/communities_actions.py +9 -10
- twitter_openapi_python_generated/models/community.py +92 -0
- twitter_openapi_python_generated/models/community_actions.py +110 -0
- twitter_openapi_python_generated/models/community_data.py +210 -0
- twitter_openapi_python_generated/models/community_delete_action_result.py +98 -0
- twitter_openapi_python_generated/models/community_invites_result.py +100 -0
- twitter_openapi_python_generated/models/community_join_action_result.py +89 -0
- twitter_openapi_python_generated/models/community_join_requests_result.py +89 -0
- twitter_openapi_python_generated/models/community_leave_action_result.py +100 -0
- twitter_openapi_python_generated/models/community_pin_action_result.py +89 -0
- twitter_openapi_python_generated/models/community_rule.py +100 -0
- twitter_openapi_python_generated/models/community_urls.py +92 -0
- twitter_openapi_python_generated/models/community_urls_permalink.py +88 -0
- twitter_openapi_python_generated/models/content_entry_type.py +1 -9
- twitter_openapi_python_generated/models/content_item_type.py +1 -9
- twitter_openapi_python_generated/models/content_union.py +8 -17
- twitter_openapi_python_generated/models/cover_cta.py +13 -15
- twitter_openapi_python_generated/models/create_retweet.py +10 -11
- twitter_openapi_python_generated/models/create_retweet_response.py +10 -11
- twitter_openapi_python_generated/models/create_retweet_response_data.py +10 -11
- twitter_openapi_python_generated/models/create_retweet_response_result.py +10 -11
- twitter_openapi_python_generated/models/create_tweet.py +10 -11
- twitter_openapi_python_generated/models/create_tweet_response.py +10 -11
- twitter_openapi_python_generated/models/create_tweet_response_data.py +10 -11
- twitter_openapi_python_generated/models/create_tweet_response_result.py +10 -11
- twitter_openapi_python_generated/models/cta_client_event_info.py +10 -11
- twitter_openapi_python_generated/models/cursor_type.py +1 -9
- twitter_openapi_python_generated/models/delete_retweet.py +10 -11
- twitter_openapi_python_generated/models/delete_retweet_response.py +10 -11
- twitter_openapi_python_generated/models/delete_retweet_response_data.py +10 -11
- twitter_openapi_python_generated/models/delete_retweet_response_result.py +10 -11
- twitter_openapi_python_generated/models/delete_tweet_response.py +10 -11
- twitter_openapi_python_generated/models/delete_tweet_response_data.py +10 -11
- twitter_openapi_python_generated/models/delete_tweet_response_result.py +9 -10
- twitter_openapi_python_generated/models/display_treatment.py +88 -0
- twitter_openapi_python_generated/models/display_type.py +40 -0
- twitter_openapi_python_generated/models/entities.py +11 -12
- twitter_openapi_python_generated/models/error.py +12 -13
- twitter_openapi_python_generated/models/error_extensions.py +10 -11
- twitter_openapi_python_generated/models/error_response.py +10 -11
- twitter_openapi_python_generated/models/errors.py +10 -11
- twitter_openapi_python_generated/models/ext_media_availability.py +10 -11
- twitter_openapi_python_generated/models/extended_entities.py +10 -11
- twitter_openapi_python_generated/models/extensions.py +10 -11
- twitter_openapi_python_generated/models/favorite_tweet.py +9 -10
- twitter_openapi_python_generated/models/favorite_tweet_response_data.py +10 -11
- twitter_openapi_python_generated/models/{social_context.py → feedback_info.py} +17 -23
- twitter_openapi_python_generated/models/follow_response.py +10 -11
- twitter_openapi_python_generated/models/follow_response_data.py +10 -11
- twitter_openapi_python_generated/models/follow_response_result.py +10 -12
- twitter_openapi_python_generated/models/follow_response_user.py +10 -11
- twitter_openapi_python_generated/models/follow_timeline.py +10 -11
- twitter_openapi_python_generated/models/get_bookmarks200_response.py +8 -17
- twitter_openapi_python_generated/models/get_favoriters200_response.py +8 -17
- twitter_openapi_python_generated/models/get_followers200_response.py +8 -17
- twitter_openapi_python_generated/models/get_home_latest_timeline200_response.py +8 -17
- twitter_openapi_python_generated/models/get_likes200_response.py +8 -17
- twitter_openapi_python_generated/models/get_list_latest_tweets_timeline200_response.py +8 -17
- twitter_openapi_python_generated/models/get_profile_spotlights_query200_response.py +8 -17
- twitter_openapi_python_generated/models/get_retweeters200_response.py +8 -17
- twitter_openapi_python_generated/models/get_search_timeline200_response.py +8 -17
- twitter_openapi_python_generated/models/get_tweet_detail200_response.py +8 -17
- twitter_openapi_python_generated/models/get_tweet_result_by_rest_id200_response.py +8 -17
- twitter_openapi_python_generated/models/get_user_by_rest_id200_response.py +8 -17
- twitter_openapi_python_generated/models/get_user_highlights_tweets200_response.py +8 -17
- twitter_openapi_python_generated/models/get_users_by_rest_ids200_response.py +8 -17
- twitter_openapi_python_generated/models/highlight.py +96 -0
- twitter_openapi_python_generated/models/home_timeline_home.py +10 -11
- twitter_openapi_python_generated/models/home_timeline_response_data.py +10 -11
- twitter_openapi_python_generated/models/instruction_type.py +1 -9
- twitter_openapi_python_generated/models/instruction_union.py +8 -17
- twitter_openapi_python_generated/models/item_content_union.py +8 -17
- twitter_openapi_python_generated/models/item_result.py +10 -12
- twitter_openapi_python_generated/models/list_latest_tweets_timeline_response.py +10 -11
- twitter_openapi_python_generated/models/list_tweets_timeline.py +10 -11
- twitter_openapi_python_generated/models/list_tweets_timeline_data.py +10 -11
- twitter_openapi_python_generated/models/list_tweets_timeline_list.py +10 -11
- twitter_openapi_python_generated/models/location.py +9 -10
- twitter_openapi_python_generated/models/media.py +52 -16
- twitter_openapi_python_generated/models/media_extended.py +43 -19
- twitter_openapi_python_generated/models/media_original_info.py +10 -11
- twitter_openapi_python_generated/models/media_original_info_focus_rect.py +9 -10
- twitter_openapi_python_generated/models/media_size.py +10 -11
- twitter_openapi_python_generated/models/media_sizes.py +13 -14
- twitter_openapi_python_generated/models/media_stats.py +9 -11
- twitter_openapi_python_generated/models/media_video_info.py +10 -11
- twitter_openapi_python_generated/models/media_video_info_variant.py +9 -10
- twitter_openapi_python_generated/models/module_entry.py +11 -13
- twitter_openapi_python_generated/models/module_item.py +10 -12
- twitter_openapi_python_generated/models/note_tweet.py +10 -11
- twitter_openapi_python_generated/models/note_tweet_result.py +10 -11
- twitter_openapi_python_generated/models/note_tweet_result_data.py +12 -14
- twitter_openapi_python_generated/models/note_tweet_result_media.py +10 -11
- twitter_openapi_python_generated/models/note_tweet_result_media_inline_media.py +9 -11
- twitter_openapi_python_generated/models/note_tweet_result_rich_text.py +10 -11
- twitter_openapi_python_generated/models/note_tweet_result_rich_text_tag.py +10 -11
- twitter_openapi_python_generated/models/one_factor_login_eligibility.py +9 -11
- twitter_openapi_python_generated/models/other200_response.py +8 -17
- twitter_openapi_python_generated/models/other_response.py +10 -12
- twitter_openapi_python_generated/models/post_create_retweet200_response.py +8 -17
- twitter_openapi_python_generated/models/post_create_retweet_request.py +10 -12
- twitter_openapi_python_generated/models/post_create_retweet_request_variables.py +9 -10
- twitter_openapi_python_generated/models/post_create_tweet200_response.py +8 -17
- twitter_openapi_python_generated/models/post_create_tweet_request.py +12 -14
- twitter_openapi_python_generated/models/post_create_tweet_request_features.py +15 -12
- twitter_openapi_python_generated/models/post_create_tweet_request_variables.py +11 -12
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_media.py +10 -11
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_media_media_entities_inner.py +9 -10
- twitter_openapi_python_generated/models/post_create_tweet_request_variables_reply.py +9 -10
- twitter_openapi_python_generated/models/post_delete_retweet200_response.py +8 -17
- twitter_openapi_python_generated/models/post_delete_retweet_request.py +10 -12
- twitter_openapi_python_generated/models/post_delete_retweet_request_variables.py +9 -10
- twitter_openapi_python_generated/models/post_delete_tweet200_response.py +8 -17
- twitter_openapi_python_generated/models/post_delete_tweet_request.py +10 -12
- twitter_openapi_python_generated/models/post_favorite_tweet200_response.py +8 -17
- twitter_openapi_python_generated/models/post_favorite_tweet_request.py +10 -12
- twitter_openapi_python_generated/models/post_unfavorite_tweet200_response.py +8 -17
- twitter_openapi_python_generated/models/post_unfavorite_tweet_request.py +10 -12
- twitter_openapi_python_generated/models/primary_community_topic.py +98 -0
- twitter_openapi_python_generated/models/profile_response.py +10 -11
- twitter_openapi_python_generated/models/profile_response_data.py +10 -11
- twitter_openapi_python_generated/models/quoted_ref_result.py +92 -0
- twitter_openapi_python_generated/models/quoted_ref_result_data.py +99 -0
- twitter_openapi_python_generated/models/quoted_status_permalink.py +92 -0
- twitter_openapi_python_generated/models/retweet.py +10 -12
- twitter_openapi_python_generated/models/retweet_legacy.py +9 -10
- twitter_openapi_python_generated/models/search_by_raw_query.py +10 -11
- twitter_openapi_python_generated/models/search_timeline.py +10 -11
- twitter_openapi_python_generated/models/search_timeline_data.py +10 -11
- twitter_openapi_python_generated/models/search_timeline_response.py +10 -11
- twitter_openapi_python_generated/models/self_thread.py +9 -11
- twitter_openapi_python_generated/models/session.py +13 -15
- twitter_openapi_python_generated/models/social_context_landing_url.py +106 -0
- twitter_openapi_python_generated/models/social_context_union.py +156 -0
- twitter_openapi_python_generated/models/social_context_union_type.py +38 -0
- twitter_openapi_python_generated/models/super_follows_reply_user_result.py +92 -0
- twitter_openapi_python_generated/models/super_follows_reply_user_result_data.py +95 -0
- twitter_openapi_python_generated/models/super_follows_reply_user_result_legacy.py +88 -0
- twitter_openapi_python_generated/models/text.py +10 -11
- twitter_openapi_python_generated/models/text_entity.py +10 -12
- twitter_openapi_python_generated/models/text_entity_ref.py +11 -13
- twitter_openapi_python_generated/models/text_highlight.py +90 -0
- twitter_openapi_python_generated/models/timeline.py +10 -12
- twitter_openapi_python_generated/models/timeline_add_entries.py +10 -11
- twitter_openapi_python_generated/models/timeline_add_entry.py +10 -12
- twitter_openapi_python_generated/models/timeline_add_to_module.py +10 -12
- twitter_openapi_python_generated/models/timeline_clear_cache.py +9 -10
- twitter_openapi_python_generated/models/timeline_community.py +10 -12
- twitter_openapi_python_generated/models/timeline_cover_behavior.py +10 -11
- twitter_openapi_python_generated/models/timeline_general_context.py +109 -0
- twitter_openapi_python_generated/models/timeline_half_cover.py +15 -17
- twitter_openapi_python_generated/models/timeline_message_prompt.py +10 -12
- twitter_openapi_python_generated/models/timeline_pin_entry.py +10 -11
- twitter_openapi_python_generated/models/timeline_prompt.py +10 -12
- twitter_openapi_python_generated/models/timeline_replace_entry.py +10 -11
- twitter_openapi_python_generated/models/timeline_response.py +10 -11
- twitter_openapi_python_generated/models/timeline_show_alert.py +13 -15
- twitter_openapi_python_generated/models/timeline_show_alert_rich_text.py +9 -10
- twitter_openapi_python_generated/models/timeline_show_cover.py +11 -13
- twitter_openapi_python_generated/models/timeline_terminate_timeline.py +10 -11
- twitter_openapi_python_generated/models/timeline_timeline_cursor.py +18 -12
- twitter_openapi_python_generated/models/timeline_timeline_item.py +11 -13
- twitter_openapi_python_generated/models/timeline_timeline_module.py +21 -21
- twitter_openapi_python_generated/models/timeline_topic_context.py +107 -0
- twitter_openapi_python_generated/models/timeline_tweet.py +21 -17
- twitter_openapi_python_generated/models/timeline_user.py +16 -18
- twitter_openapi_python_generated/models/timeline_v2.py +10 -11
- twitter_openapi_python_generated/models/topic_context.py +100 -0
- twitter_openapi_python_generated/models/tracing.py +9 -11
- twitter_openapi_python_generated/models/tweet.py +51 -21
- twitter_openapi_python_generated/models/tweet_card.py +10 -11
- twitter_openapi_python_generated/models/tweet_card_legacy.py +28 -13
- twitter_openapi_python_generated/models/tweet_card_legacy_binding_value.py +10 -11
- twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data.py +25 -12
- twitter_openapi_python_generated/models/tweet_card_legacy_binding_value_data_image.py +94 -0
- twitter_openapi_python_generated/models/tweet_card_platform.py +98 -0
- twitter_openapi_python_generated/models/tweet_card_platform_audience.py +95 -0
- twitter_openapi_python_generated/models/tweet_card_platform_data.py +92 -0
- twitter_openapi_python_generated/models/tweet_card_platform_device.py +98 -0
- twitter_openapi_python_generated/models/tweet_detail_response.py +10 -11
- twitter_openapi_python_generated/models/tweet_detail_response_data.py +10 -11
- twitter_openapi_python_generated/models/tweet_edit_control.py +10 -12
- twitter_openapi_python_generated/models/tweet_edit_control_initial.py +9 -11
- twitter_openapi_python_generated/models/tweet_edit_prespective.py +9 -10
- twitter_openapi_python_generated/models/tweet_favoriters_response.py +10 -11
- twitter_openapi_python_generated/models/tweet_favoriters_response_data.py +10 -11
- twitter_openapi_python_generated/models/tweet_interstitial.py +110 -0
- twitter_openapi_python_generated/models/tweet_interstitial_reveal_text.py +100 -0
- twitter_openapi_python_generated/models/tweet_interstitial_text.py +100 -0
- twitter_openapi_python_generated/models/tweet_interstitial_text_entity.py +96 -0
- twitter_openapi_python_generated/models/tweet_interstitial_text_entity_ref.py +106 -0
- twitter_openapi_python_generated/models/tweet_legacy.py +80 -16
- twitter_openapi_python_generated/models/tweet_legacy_scopes.py +88 -0
- twitter_openapi_python_generated/models/tweet_previous_counts.py +96 -0
- twitter_openapi_python_generated/models/tweet_result_by_rest_id_data.py +10 -12
- twitter_openapi_python_generated/models/tweet_result_by_rest_id_response.py +10 -11
- twitter_openapi_python_generated/models/tweet_retweeters_response.py +10 -11
- twitter_openapi_python_generated/models/tweet_retweeters_response_data.py +10 -11
- twitter_openapi_python_generated/models/tweet_tombstone.py +10 -12
- twitter_openapi_python_generated/models/tweet_union.py +8 -17
- twitter_openapi_python_generated/models/tweet_view.py +10 -12
- twitter_openapi_python_generated/models/tweet_with_visibility_results.py +20 -14
- twitter_openapi_python_generated/models/type_name.py +9 -9
- twitter_openapi_python_generated/models/unfavorite_tweet.py +9 -10
- twitter_openapi_python_generated/models/unfavorite_tweet_response_data.py +10 -11
- twitter_openapi_python_generated/models/unified_card.py +95 -0
- twitter_openapi_python_generated/models/url.py +9 -10
- twitter_openapi_python_generated/models/urt_endpoint_options.py +98 -0
- twitter_openapi_python_generated/models/urt_endpoint_request_params.py +90 -0
- twitter_openapi_python_generated/models/user.py +45 -14
- twitter_openapi_python_generated/models/user_features.py +9 -10
- twitter_openapi_python_generated/models/user_highlights_info.py +90 -0
- twitter_openapi_python_generated/models/user_highlights_tweets_data.py +10 -11
- twitter_openapi_python_generated/models/user_highlights_tweets_response.py +10 -11
- twitter_openapi_python_generated/models/user_highlights_tweets_result.py +10 -12
- twitter_openapi_python_generated/models/user_highlights_tweets_timeline.py +10 -11
- twitter_openapi_python_generated/models/user_highlights_tweets_user.py +10 -11
- twitter_openapi_python_generated/models/user_legacy.py +25 -13
- twitter_openapi_python_generated/models/user_professional.py +115 -0
- twitter_openapi_python_generated/models/user_professional_category.py +92 -0
- twitter_openapi_python_generated/models/user_response.py +10 -11
- twitter_openapi_python_generated/models/user_response_data.py +10 -11
- twitter_openapi_python_generated/models/user_result_by_screen_name.py +10 -12
- twitter_openapi_python_generated/models/user_result_by_screen_name_legacy.py +9 -10
- twitter_openapi_python_generated/models/user_result_by_screen_name_result.py +10 -12
- twitter_openapi_python_generated/models/user_result_core.py +10 -11
- twitter_openapi_python_generated/models/user_results.py +10 -11
- twitter_openapi_python_generated/models/user_tweets_data.py +10 -11
- twitter_openapi_python_generated/models/user_tweets_response.py +10 -11
- twitter_openapi_python_generated/models/user_tweets_result.py +10 -12
- twitter_openapi_python_generated/models/user_tweets_user.py +10 -11
- twitter_openapi_python_generated/models/user_unavailable.py +9 -11
- twitter_openapi_python_generated/models/user_union.py +8 -17
- twitter_openapi_python_generated/models/user_value.py +96 -0
- twitter_openapi_python_generated/models/user_verification_info.py +94 -0
- twitter_openapi_python_generated/models/user_verification_info_reason.py +104 -0
- twitter_openapi_python_generated/models/user_verification_info_reason_description.py +98 -0
- twitter_openapi_python_generated/models/user_verification_info_reason_description_entities.py +96 -0
- twitter_openapi_python_generated/models/user_verification_info_reason_description_entities_ref.py +97 -0
- twitter_openapi_python_generated/models/users_response.py +10 -11
- twitter_openapi_python_generated/models/users_response_data.py +10 -11
- twitter_openapi_python_generated/rest.py +23 -35
- {twitter_openapi_python_generated-0.0.9.dist-info → twitter_openapi_python_generated-0.0.11.dist-info}/METADATA +1 -1
- twitter_openapi_python_generated-0.0.11.dist-info/RECORD +282 -0
- twitter_openapi_python_generated-0.0.9.dist-info/RECORD +0 -225
- {twitter_openapi_python_generated-0.0.9.dist-info → twitter_openapi_python_generated-0.0.11.dist-info}/LICENSE +0 -0
- {twitter_openapi_python_generated-0.0.9.dist-info → twitter_openapi_python_generated-0.0.11.dist-info}/LICENSE.AGPL +0 -0
- {twitter_openapi_python_generated-0.0.9.dist-info → twitter_openapi_python_generated-0.0.11.dist-info}/WHEEL +0 -0
- {twitter_openapi_python_generated-0.0.9.dist-info → twitter_openapi_python_generated-0.0.11.dist-info}/top_level.txt +0 -0
|
@@ -18,17 +18,13 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
from pydantic import BaseModel, Field, StrictBool, StrictStr, field_validator
|
|
22
22
|
from typing import Any, ClassVar, Dict, List
|
|
23
|
-
from pydantic import BaseModel, StrictBool, StrictStr, field_validator
|
|
24
|
-
from pydantic import Field
|
|
25
23
|
from twitter_openapi_python_generated.models.callback import Callback
|
|
26
24
|
from twitter_openapi_python_generated.models.cover_cta import CoverCta
|
|
27
25
|
from twitter_openapi_python_generated.models.text import Text
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
except ImportError:
|
|
31
|
-
from typing_extensions import Self
|
|
26
|
+
from typing import Optional, Set
|
|
27
|
+
from typing_extensions import Self
|
|
32
28
|
|
|
33
29
|
class TimelineHalfCover(BaseModel):
|
|
34
30
|
"""
|
|
@@ -46,14 +42,14 @@ class TimelineHalfCover(BaseModel):
|
|
|
46
42
|
@field_validator('half_cover_display_type')
|
|
47
43
|
def half_cover_display_type_validate_enum(cls, value):
|
|
48
44
|
"""Validates the enum"""
|
|
49
|
-
if value not in ('Cover'):
|
|
45
|
+
if value not in set(['Cover']):
|
|
50
46
|
raise ValueError("must be one of enum values ('Cover')")
|
|
51
47
|
return value
|
|
52
48
|
|
|
53
49
|
@field_validator('type')
|
|
54
50
|
def type_validate_enum(cls, value):
|
|
55
51
|
"""Validates the enum"""
|
|
56
|
-
if value not in ('TimelineHalfCover'):
|
|
52
|
+
if value not in set(['TimelineHalfCover']):
|
|
57
53
|
raise ValueError("must be one of enum values ('TimelineHalfCover')")
|
|
58
54
|
return value
|
|
59
55
|
|
|
@@ -74,7 +70,7 @@ class TimelineHalfCover(BaseModel):
|
|
|
74
70
|
return json.dumps(self.to_dict())
|
|
75
71
|
|
|
76
72
|
@classmethod
|
|
77
|
-
def from_json(cls, json_str: str) -> Self:
|
|
73
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
78
74
|
"""Create an instance of TimelineHalfCover from a JSON string"""
|
|
79
75
|
return cls.from_dict(json.loads(json_str))
|
|
80
76
|
|
|
@@ -88,10 +84,12 @@ class TimelineHalfCover(BaseModel):
|
|
|
88
84
|
were set at model initialization. Other fields with value `None`
|
|
89
85
|
are ignored.
|
|
90
86
|
"""
|
|
87
|
+
excluded_fields: Set[str] = set([
|
|
88
|
+
])
|
|
89
|
+
|
|
91
90
|
_dict = self.model_dump(
|
|
92
91
|
by_alias=True,
|
|
93
|
-
exclude=
|
|
94
|
-
},
|
|
92
|
+
exclude=excluded_fields,
|
|
95
93
|
exclude_none=True,
|
|
96
94
|
)
|
|
97
95
|
# override the default output from pydantic by calling `to_dict()` of each item in impression_callbacks (list)
|
|
@@ -113,7 +111,7 @@ class TimelineHalfCover(BaseModel):
|
|
|
113
111
|
return _dict
|
|
114
112
|
|
|
115
113
|
@classmethod
|
|
116
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
114
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
117
115
|
"""Create an instance of TimelineHalfCover from a dict"""
|
|
118
116
|
if obj is None:
|
|
119
117
|
return None
|
|
@@ -124,10 +122,10 @@ class TimelineHalfCover(BaseModel):
|
|
|
124
122
|
_obj = cls.model_validate({
|
|
125
123
|
"dismissible": obj.get("dismissible"),
|
|
126
124
|
"halfCoverDisplayType": obj.get("halfCoverDisplayType"),
|
|
127
|
-
"impressionCallbacks": [Callback.from_dict(_item) for _item in obj
|
|
128
|
-
"primaryCoverCta": CoverCta.from_dict(obj
|
|
129
|
-
"primaryText": Text.from_dict(obj
|
|
130
|
-
"secondaryText": Text.from_dict(obj
|
|
125
|
+
"impressionCallbacks": [Callback.from_dict(_item) for _item in obj["impressionCallbacks"]] if obj.get("impressionCallbacks") is not None else None,
|
|
126
|
+
"primaryCoverCta": CoverCta.from_dict(obj["primaryCoverCta"]) if obj.get("primaryCoverCta") is not None else None,
|
|
127
|
+
"primaryText": Text.from_dict(obj["primaryText"]) if obj.get("primaryText") is not None else None,
|
|
128
|
+
"secondaryText": Text.from_dict(obj["secondaryText"]) if obj.get("secondaryText") is not None else None,
|
|
131
129
|
"type": obj.get("type")
|
|
132
130
|
})
|
|
133
131
|
return _obj
|
|
@@ -18,15 +18,11 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
from pydantic import BaseModel, Field
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
-
from pydantic import BaseModel
|
|
24
|
-
from pydantic import Field
|
|
25
23
|
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
except ImportError:
|
|
29
|
-
from typing_extensions import Self
|
|
24
|
+
from typing import Optional, Set
|
|
25
|
+
from typing_extensions import Self
|
|
30
26
|
|
|
31
27
|
class TimelineMessagePrompt(BaseModel):
|
|
32
28
|
"""
|
|
@@ -53,7 +49,7 @@ class TimelineMessagePrompt(BaseModel):
|
|
|
53
49
|
return json.dumps(self.to_dict())
|
|
54
50
|
|
|
55
51
|
@classmethod
|
|
56
|
-
def from_json(cls, json_str: str) -> Self:
|
|
52
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
57
53
|
"""Create an instance of TimelineMessagePrompt from a JSON string"""
|
|
58
54
|
return cls.from_dict(json.loads(json_str))
|
|
59
55
|
|
|
@@ -68,11 +64,13 @@ class TimelineMessagePrompt(BaseModel):
|
|
|
68
64
|
are ignored.
|
|
69
65
|
* Fields in `self.additional_properties` are added to the output dict.
|
|
70
66
|
"""
|
|
67
|
+
excluded_fields: Set[str] = set([
|
|
68
|
+
"additional_properties",
|
|
69
|
+
])
|
|
70
|
+
|
|
71
71
|
_dict = self.model_dump(
|
|
72
72
|
by_alias=True,
|
|
73
|
-
exclude=
|
|
74
|
-
"additional_properties",
|
|
75
|
-
},
|
|
73
|
+
exclude=excluded_fields,
|
|
76
74
|
exclude_none=True,
|
|
77
75
|
)
|
|
78
76
|
# puts key-value pairs in additional_properties in the top level
|
|
@@ -83,7 +81,7 @@ class TimelineMessagePrompt(BaseModel):
|
|
|
83
81
|
return _dict
|
|
84
82
|
|
|
85
83
|
@classmethod
|
|
86
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
84
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
87
85
|
"""Create an instance of TimelineMessagePrompt from a dict"""
|
|
88
86
|
if obj is None:
|
|
89
87
|
return None
|
|
@@ -18,15 +18,12 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
from typing import Any, ClassVar, Dict, List
|
|
23
21
|
from pydantic import BaseModel
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
24
23
|
from twitter_openapi_python_generated.models.instruction_type import InstructionType
|
|
25
24
|
from twitter_openapi_python_generated.models.timeline_add_entry import TimelineAddEntry
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
except ImportError:
|
|
29
|
-
from typing_extensions import Self
|
|
25
|
+
from typing import Optional, Set
|
|
26
|
+
from typing_extensions import Self
|
|
30
27
|
|
|
31
28
|
class TimelinePinEntry(BaseModel):
|
|
32
29
|
"""
|
|
@@ -53,7 +50,7 @@ class TimelinePinEntry(BaseModel):
|
|
|
53
50
|
return json.dumps(self.to_dict())
|
|
54
51
|
|
|
55
52
|
@classmethod
|
|
56
|
-
def from_json(cls, json_str: str) -> Self:
|
|
53
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
57
54
|
"""Create an instance of TimelinePinEntry from a JSON string"""
|
|
58
55
|
return cls.from_dict(json.loads(json_str))
|
|
59
56
|
|
|
@@ -67,10 +64,12 @@ class TimelinePinEntry(BaseModel):
|
|
|
67
64
|
were set at model initialization. Other fields with value `None`
|
|
68
65
|
are ignored.
|
|
69
66
|
"""
|
|
67
|
+
excluded_fields: Set[str] = set([
|
|
68
|
+
])
|
|
69
|
+
|
|
70
70
|
_dict = self.model_dump(
|
|
71
71
|
by_alias=True,
|
|
72
|
-
exclude=
|
|
73
|
-
},
|
|
72
|
+
exclude=excluded_fields,
|
|
74
73
|
exclude_none=True,
|
|
75
74
|
)
|
|
76
75
|
# override the default output from pydantic by calling `to_dict()` of entry
|
|
@@ -79,7 +78,7 @@ class TimelinePinEntry(BaseModel):
|
|
|
79
78
|
return _dict
|
|
80
79
|
|
|
81
80
|
@classmethod
|
|
82
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
81
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
83
82
|
"""Create an instance of TimelinePinEntry from a dict"""
|
|
84
83
|
if obj is None:
|
|
85
84
|
return None
|
|
@@ -88,7 +87,7 @@ class TimelinePinEntry(BaseModel):
|
|
|
88
87
|
return cls.model_validate(obj)
|
|
89
88
|
|
|
90
89
|
_obj = cls.model_validate({
|
|
91
|
-
"entry": TimelineAddEntry.from_dict(obj
|
|
90
|
+
"entry": TimelineAddEntry.from_dict(obj["entry"]) if obj.get("entry") is not None else None,
|
|
92
91
|
"type": obj.get("type")
|
|
93
92
|
})
|
|
94
93
|
return _obj
|
|
@@ -18,15 +18,11 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
from pydantic import BaseModel, Field
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
-
from pydantic import BaseModel
|
|
24
|
-
from pydantic import Field
|
|
25
23
|
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
except ImportError:
|
|
29
|
-
from typing_extensions import Self
|
|
24
|
+
from typing import Optional, Set
|
|
25
|
+
from typing_extensions import Self
|
|
30
26
|
|
|
31
27
|
class TimelinePrompt(BaseModel):
|
|
32
28
|
"""
|
|
@@ -53,7 +49,7 @@ class TimelinePrompt(BaseModel):
|
|
|
53
49
|
return json.dumps(self.to_dict())
|
|
54
50
|
|
|
55
51
|
@classmethod
|
|
56
|
-
def from_json(cls, json_str: str) -> Self:
|
|
52
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
57
53
|
"""Create an instance of TimelinePrompt from a JSON string"""
|
|
58
54
|
return cls.from_dict(json.loads(json_str))
|
|
59
55
|
|
|
@@ -68,11 +64,13 @@ class TimelinePrompt(BaseModel):
|
|
|
68
64
|
are ignored.
|
|
69
65
|
* Fields in `self.additional_properties` are added to the output dict.
|
|
70
66
|
"""
|
|
67
|
+
excluded_fields: Set[str] = set([
|
|
68
|
+
"additional_properties",
|
|
69
|
+
])
|
|
70
|
+
|
|
71
71
|
_dict = self.model_dump(
|
|
72
72
|
by_alias=True,
|
|
73
|
-
exclude=
|
|
74
|
-
"additional_properties",
|
|
75
|
-
},
|
|
73
|
+
exclude=excluded_fields,
|
|
76
74
|
exclude_none=True,
|
|
77
75
|
)
|
|
78
76
|
# puts key-value pairs in additional_properties in the top level
|
|
@@ -83,7 +81,7 @@ class TimelinePrompt(BaseModel):
|
|
|
83
81
|
return _dict
|
|
84
82
|
|
|
85
83
|
@classmethod
|
|
86
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
84
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
87
85
|
"""Create an instance of TimelinePrompt from a dict"""
|
|
88
86
|
if obj is None:
|
|
89
87
|
return None
|
|
@@ -18,15 +18,12 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
from typing import Any, ClassVar, Dict, List
|
|
23
21
|
from pydantic import BaseModel, StrictStr
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
24
23
|
from twitter_openapi_python_generated.models.instruction_type import InstructionType
|
|
25
24
|
from twitter_openapi_python_generated.models.timeline_add_entry import TimelineAddEntry
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
except ImportError:
|
|
29
|
-
from typing_extensions import Self
|
|
25
|
+
from typing import Optional, Set
|
|
26
|
+
from typing_extensions import Self
|
|
30
27
|
|
|
31
28
|
class TimelineReplaceEntry(BaseModel):
|
|
32
29
|
"""
|
|
@@ -54,7 +51,7 @@ class TimelineReplaceEntry(BaseModel):
|
|
|
54
51
|
return json.dumps(self.to_dict())
|
|
55
52
|
|
|
56
53
|
@classmethod
|
|
57
|
-
def from_json(cls, json_str: str) -> Self:
|
|
54
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
58
55
|
"""Create an instance of TimelineReplaceEntry from a JSON string"""
|
|
59
56
|
return cls.from_dict(json.loads(json_str))
|
|
60
57
|
|
|
@@ -68,10 +65,12 @@ class TimelineReplaceEntry(BaseModel):
|
|
|
68
65
|
were set at model initialization. Other fields with value `None`
|
|
69
66
|
are ignored.
|
|
70
67
|
"""
|
|
68
|
+
excluded_fields: Set[str] = set([
|
|
69
|
+
])
|
|
70
|
+
|
|
71
71
|
_dict = self.model_dump(
|
|
72
72
|
by_alias=True,
|
|
73
|
-
exclude=
|
|
74
|
-
},
|
|
73
|
+
exclude=excluded_fields,
|
|
75
74
|
exclude_none=True,
|
|
76
75
|
)
|
|
77
76
|
# override the default output from pydantic by calling `to_dict()` of entry
|
|
@@ -80,7 +79,7 @@ class TimelineReplaceEntry(BaseModel):
|
|
|
80
79
|
return _dict
|
|
81
80
|
|
|
82
81
|
@classmethod
|
|
83
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
82
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
84
83
|
"""Create an instance of TimelineReplaceEntry from a dict"""
|
|
85
84
|
if obj is None:
|
|
86
85
|
return None
|
|
@@ -89,7 +88,7 @@ class TimelineReplaceEntry(BaseModel):
|
|
|
89
88
|
return cls.model_validate(obj)
|
|
90
89
|
|
|
91
90
|
_obj = cls.model_validate({
|
|
92
|
-
"entry": TimelineAddEntry.from_dict(obj
|
|
91
|
+
"entry": TimelineAddEntry.from_dict(obj["entry"]) if obj.get("entry") is not None else None,
|
|
93
92
|
"entry_id_to_replace": obj.get("entry_id_to_replace"),
|
|
94
93
|
"type": obj.get("type")
|
|
95
94
|
})
|
|
@@ -18,14 +18,11 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
from typing import Any, ClassVar, Dict, List
|
|
23
21
|
from pydantic import BaseModel
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
24
23
|
from twitter_openapi_python_generated.models.home_timeline_response_data import HomeTimelineResponseData
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
except ImportError:
|
|
28
|
-
from typing_extensions import Self
|
|
24
|
+
from typing import Optional, Set
|
|
25
|
+
from typing_extensions import Self
|
|
29
26
|
|
|
30
27
|
class TimelineResponse(BaseModel):
|
|
31
28
|
"""
|
|
@@ -51,7 +48,7 @@ class TimelineResponse(BaseModel):
|
|
|
51
48
|
return json.dumps(self.to_dict())
|
|
52
49
|
|
|
53
50
|
@classmethod
|
|
54
|
-
def from_json(cls, json_str: str) -> Self:
|
|
51
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
55
52
|
"""Create an instance of TimelineResponse from a JSON string"""
|
|
56
53
|
return cls.from_dict(json.loads(json_str))
|
|
57
54
|
|
|
@@ -65,10 +62,12 @@ class TimelineResponse(BaseModel):
|
|
|
65
62
|
were set at model initialization. Other fields with value `None`
|
|
66
63
|
are ignored.
|
|
67
64
|
"""
|
|
65
|
+
excluded_fields: Set[str] = set([
|
|
66
|
+
])
|
|
67
|
+
|
|
68
68
|
_dict = self.model_dump(
|
|
69
69
|
by_alias=True,
|
|
70
|
-
exclude=
|
|
71
|
-
},
|
|
70
|
+
exclude=excluded_fields,
|
|
72
71
|
exclude_none=True,
|
|
73
72
|
)
|
|
74
73
|
# override the default output from pydantic by calling `to_dict()` of data
|
|
@@ -77,7 +76,7 @@ class TimelineResponse(BaseModel):
|
|
|
77
76
|
return _dict
|
|
78
77
|
|
|
79
78
|
@classmethod
|
|
80
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
79
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
81
80
|
"""Create an instance of TimelineResponse from a dict"""
|
|
82
81
|
if obj is None:
|
|
83
82
|
return None
|
|
@@ -86,7 +85,7 @@ class TimelineResponse(BaseModel):
|
|
|
86
85
|
return cls.model_validate(obj)
|
|
87
86
|
|
|
88
87
|
_obj = cls.model_validate({
|
|
89
|
-
"data": HomeTimelineResponseData.from_dict(obj
|
|
88
|
+
"data": HomeTimelineResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None
|
|
90
89
|
})
|
|
91
90
|
return _obj
|
|
92
91
|
|
|
@@ -18,17 +18,13 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
from pydantic import BaseModel, Field, StrictInt, StrictStr, field_validator
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
-
from pydantic import BaseModel, StrictInt, StrictStr, field_validator
|
|
24
|
-
from pydantic import Field
|
|
25
23
|
from twitter_openapi_python_generated.models.instruction_type import InstructionType
|
|
26
24
|
from twitter_openapi_python_generated.models.timeline_show_alert_rich_text import TimelineShowAlertRichText
|
|
27
25
|
from twitter_openapi_python_generated.models.user_results import UserResults
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
except ImportError:
|
|
31
|
-
from typing_extensions import Self
|
|
26
|
+
from typing import Optional, Set
|
|
27
|
+
from typing_extensions import Self
|
|
32
28
|
|
|
33
29
|
class TimelineShowAlert(BaseModel):
|
|
34
30
|
"""
|
|
@@ -51,7 +47,7 @@ class TimelineShowAlert(BaseModel):
|
|
|
51
47
|
if value is None:
|
|
52
48
|
return value
|
|
53
49
|
|
|
54
|
-
if value not in ('NewTweets'):
|
|
50
|
+
if value not in set(['NewTweets']):
|
|
55
51
|
raise ValueError("must be one of enum values ('NewTweets')")
|
|
56
52
|
return value
|
|
57
53
|
|
|
@@ -61,7 +57,7 @@ class TimelineShowAlert(BaseModel):
|
|
|
61
57
|
if value is None:
|
|
62
58
|
return value
|
|
63
59
|
|
|
64
|
-
if value not in ('Top'):
|
|
60
|
+
if value not in set(['Top']):
|
|
65
61
|
raise ValueError("must be one of enum values ('Top')")
|
|
66
62
|
return value
|
|
67
63
|
|
|
@@ -82,7 +78,7 @@ class TimelineShowAlert(BaseModel):
|
|
|
82
78
|
return json.dumps(self.to_dict())
|
|
83
79
|
|
|
84
80
|
@classmethod
|
|
85
|
-
def from_json(cls, json_str: str) -> Self:
|
|
81
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
86
82
|
"""Create an instance of TimelineShowAlert from a JSON string"""
|
|
87
83
|
return cls.from_dict(json.loads(json_str))
|
|
88
84
|
|
|
@@ -96,10 +92,12 @@ class TimelineShowAlert(BaseModel):
|
|
|
96
92
|
were set at model initialization. Other fields with value `None`
|
|
97
93
|
are ignored.
|
|
98
94
|
"""
|
|
95
|
+
excluded_fields: Set[str] = set([
|
|
96
|
+
])
|
|
97
|
+
|
|
99
98
|
_dict = self.model_dump(
|
|
100
99
|
by_alias=True,
|
|
101
|
-
exclude=
|
|
102
|
-
},
|
|
100
|
+
exclude=excluded_fields,
|
|
103
101
|
exclude_none=True,
|
|
104
102
|
)
|
|
105
103
|
# override the default output from pydantic by calling `to_dict()` of rich_text
|
|
@@ -115,7 +113,7 @@ class TimelineShowAlert(BaseModel):
|
|
|
115
113
|
return _dict
|
|
116
114
|
|
|
117
115
|
@classmethod
|
|
118
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
116
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
119
117
|
"""Create an instance of TimelineShowAlert from a dict"""
|
|
120
118
|
if obj is None:
|
|
121
119
|
return None
|
|
@@ -129,10 +127,10 @@ class TimelineShowAlert(BaseModel):
|
|
|
129
127
|
"displayDurationMs": obj.get("displayDurationMs"),
|
|
130
128
|
"displayLocation": obj.get("displayLocation"),
|
|
131
129
|
"iconDisplayInfo": obj.get("iconDisplayInfo"),
|
|
132
|
-
"richText": TimelineShowAlertRichText.from_dict(obj
|
|
130
|
+
"richText": TimelineShowAlertRichText.from_dict(obj["richText"]) if obj.get("richText") is not None else None,
|
|
133
131
|
"triggerDelayMs": obj.get("triggerDelayMs"),
|
|
134
132
|
"type": obj.get("type"),
|
|
135
|
-
"usersResults": [UserResults.from_dict(_item) for _item in obj
|
|
133
|
+
"usersResults": [UserResults.from_dict(_item) for _item in obj["usersResults"]] if obj.get("usersResults") is not None else None
|
|
136
134
|
})
|
|
137
135
|
return _obj
|
|
138
136
|
|
|
@@ -18,13 +18,10 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
21
|
from pydantic import BaseModel, StrictStr
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
from typing_extensions import Self
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
28
25
|
|
|
29
26
|
class TimelineShowAlertRichText(BaseModel):
|
|
30
27
|
"""
|
|
@@ -51,7 +48,7 @@ class TimelineShowAlertRichText(BaseModel):
|
|
|
51
48
|
return json.dumps(self.to_dict())
|
|
52
49
|
|
|
53
50
|
@classmethod
|
|
54
|
-
def from_json(cls, json_str: str) -> Self:
|
|
51
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
55
52
|
"""Create an instance of TimelineShowAlertRichText from a JSON string"""
|
|
56
53
|
return cls.from_dict(json.loads(json_str))
|
|
57
54
|
|
|
@@ -65,16 +62,18 @@ class TimelineShowAlertRichText(BaseModel):
|
|
|
65
62
|
were set at model initialization. Other fields with value `None`
|
|
66
63
|
are ignored.
|
|
67
64
|
"""
|
|
65
|
+
excluded_fields: Set[str] = set([
|
|
66
|
+
])
|
|
67
|
+
|
|
68
68
|
_dict = self.model_dump(
|
|
69
69
|
by_alias=True,
|
|
70
|
-
exclude=
|
|
71
|
-
},
|
|
70
|
+
exclude=excluded_fields,
|
|
72
71
|
exclude_none=True,
|
|
73
72
|
)
|
|
74
73
|
return _dict
|
|
75
74
|
|
|
76
75
|
@classmethod
|
|
77
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
76
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
78
77
|
"""Create an instance of TimelineShowAlertRichText from a dict"""
|
|
79
78
|
if obj is None:
|
|
80
79
|
return None
|
|
@@ -18,17 +18,13 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
from pydantic import BaseModel, Field
|
|
22
22
|
from typing import Any, ClassVar, Dict, List
|
|
23
|
-
from pydantic import BaseModel
|
|
24
|
-
from pydantic import Field
|
|
25
23
|
from twitter_openapi_python_generated.models.client_event_info import ClientEventInfo
|
|
26
24
|
from twitter_openapi_python_generated.models.instruction_type import InstructionType
|
|
27
25
|
from twitter_openapi_python_generated.models.timeline_half_cover import TimelineHalfCover
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
except ImportError:
|
|
31
|
-
from typing_extensions import Self
|
|
26
|
+
from typing import Optional, Set
|
|
27
|
+
from typing_extensions import Self
|
|
32
28
|
|
|
33
29
|
class TimelineShowCover(BaseModel):
|
|
34
30
|
"""
|
|
@@ -56,7 +52,7 @@ class TimelineShowCover(BaseModel):
|
|
|
56
52
|
return json.dumps(self.to_dict())
|
|
57
53
|
|
|
58
54
|
@classmethod
|
|
59
|
-
def from_json(cls, json_str: str) -> Self:
|
|
55
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
60
56
|
"""Create an instance of TimelineShowCover from a JSON string"""
|
|
61
57
|
return cls.from_dict(json.loads(json_str))
|
|
62
58
|
|
|
@@ -70,10 +66,12 @@ class TimelineShowCover(BaseModel):
|
|
|
70
66
|
were set at model initialization. Other fields with value `None`
|
|
71
67
|
are ignored.
|
|
72
68
|
"""
|
|
69
|
+
excluded_fields: Set[str] = set([
|
|
70
|
+
])
|
|
71
|
+
|
|
73
72
|
_dict = self.model_dump(
|
|
74
73
|
by_alias=True,
|
|
75
|
-
exclude=
|
|
76
|
-
},
|
|
74
|
+
exclude=excluded_fields,
|
|
77
75
|
exclude_none=True,
|
|
78
76
|
)
|
|
79
77
|
# override the default output from pydantic by calling `to_dict()` of client_event_info
|
|
@@ -85,7 +83,7 @@ class TimelineShowCover(BaseModel):
|
|
|
85
83
|
return _dict
|
|
86
84
|
|
|
87
85
|
@classmethod
|
|
88
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
86
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
89
87
|
"""Create an instance of TimelineShowCover from a dict"""
|
|
90
88
|
if obj is None:
|
|
91
89
|
return None
|
|
@@ -94,8 +92,8 @@ class TimelineShowCover(BaseModel):
|
|
|
94
92
|
return cls.model_validate(obj)
|
|
95
93
|
|
|
96
94
|
_obj = cls.model_validate({
|
|
97
|
-
"clientEventInfo": ClientEventInfo.from_dict(obj
|
|
98
|
-
"cover": TimelineHalfCover.from_dict(obj
|
|
95
|
+
"clientEventInfo": ClientEventInfo.from_dict(obj["clientEventInfo"]) if obj.get("clientEventInfo") is not None else None,
|
|
96
|
+
"cover": TimelineHalfCover.from_dict(obj["cover"]) if obj.get("cover") is not None else None,
|
|
99
97
|
"type": obj.get("type")
|
|
100
98
|
})
|
|
101
99
|
return _obj
|
|
@@ -18,14 +18,11 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
from typing import Any, ClassVar, Dict, List
|
|
23
21
|
from pydantic import BaseModel, StrictStr, field_validator
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
24
23
|
from twitter_openapi_python_generated.models.instruction_type import InstructionType
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
except ImportError:
|
|
28
|
-
from typing_extensions import Self
|
|
24
|
+
from typing import Optional, Set
|
|
25
|
+
from typing_extensions import Self
|
|
29
26
|
|
|
30
27
|
class TimelineTerminateTimeline(BaseModel):
|
|
31
28
|
"""
|
|
@@ -38,7 +35,7 @@ class TimelineTerminateTimeline(BaseModel):
|
|
|
38
35
|
@field_validator('direction')
|
|
39
36
|
def direction_validate_enum(cls, value):
|
|
40
37
|
"""Validates the enum"""
|
|
41
|
-
if value not in ('Top', 'Bottom'):
|
|
38
|
+
if value not in set(['Top', 'Bottom']):
|
|
42
39
|
raise ValueError("must be one of enum values ('Top', 'Bottom')")
|
|
43
40
|
return value
|
|
44
41
|
|
|
@@ -59,7 +56,7 @@ class TimelineTerminateTimeline(BaseModel):
|
|
|
59
56
|
return json.dumps(self.to_dict())
|
|
60
57
|
|
|
61
58
|
@classmethod
|
|
62
|
-
def from_json(cls, json_str: str) -> Self:
|
|
59
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
63
60
|
"""Create an instance of TimelineTerminateTimeline from a JSON string"""
|
|
64
61
|
return cls.from_dict(json.loads(json_str))
|
|
65
62
|
|
|
@@ -73,16 +70,18 @@ class TimelineTerminateTimeline(BaseModel):
|
|
|
73
70
|
were set at model initialization. Other fields with value `None`
|
|
74
71
|
are ignored.
|
|
75
72
|
"""
|
|
73
|
+
excluded_fields: Set[str] = set([
|
|
74
|
+
])
|
|
75
|
+
|
|
76
76
|
_dict = self.model_dump(
|
|
77
77
|
by_alias=True,
|
|
78
|
-
exclude=
|
|
79
|
-
},
|
|
78
|
+
exclude=excluded_fields,
|
|
80
79
|
exclude_none=True,
|
|
81
80
|
)
|
|
82
81
|
return _dict
|
|
83
82
|
|
|
84
83
|
@classmethod
|
|
85
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
84
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
86
85
|
"""Create an instance of TimelineTerminateTimeline from a dict"""
|
|
87
86
|
if obj is None:
|
|
88
87
|
return None
|