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
|
@@ -0,0 +1,99 @@
|
|
|
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, Field, field_validator
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
23
|
+
from typing_extensions import Annotated
|
|
24
|
+
from twitter_openapi_python_generated.models.type_name import TypeName
|
|
25
|
+
from typing import Optional, Set
|
|
26
|
+
from typing_extensions import Self
|
|
27
|
+
|
|
28
|
+
class QuotedRefResultData(BaseModel):
|
|
29
|
+
"""
|
|
30
|
+
QuotedRefResultData
|
|
31
|
+
""" # noqa: E501
|
|
32
|
+
typename: TypeName = Field(alias="__typename")
|
|
33
|
+
rest_id: Annotated[str, Field(strict=True)]
|
|
34
|
+
__properties: ClassVar[List[str]] = ["__typename", "rest_id"]
|
|
35
|
+
|
|
36
|
+
@field_validator('rest_id')
|
|
37
|
+
def rest_id_validate_regular_expression(cls, value):
|
|
38
|
+
"""Validates the regular expression"""
|
|
39
|
+
if not re.match(r"^[0-9]+$", value):
|
|
40
|
+
raise ValueError(r"must validate the regular expression /^[0-9]+$/")
|
|
41
|
+
return value
|
|
42
|
+
|
|
43
|
+
model_config = {
|
|
44
|
+
"populate_by_name": True,
|
|
45
|
+
"validate_assignment": True,
|
|
46
|
+
"protected_namespaces": (),
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
def to_str(self) -> str:
|
|
51
|
+
"""Returns the string representation of the model using alias"""
|
|
52
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
53
|
+
|
|
54
|
+
def to_json(self) -> str:
|
|
55
|
+
"""Returns the JSON representation of the model using alias"""
|
|
56
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
57
|
+
return json.dumps(self.to_dict())
|
|
58
|
+
|
|
59
|
+
@classmethod
|
|
60
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
61
|
+
"""Create an instance of QuotedRefResultData from a JSON string"""
|
|
62
|
+
return cls.from_dict(json.loads(json_str))
|
|
63
|
+
|
|
64
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
65
|
+
"""Return the dictionary representation of the model using alias.
|
|
66
|
+
|
|
67
|
+
This has the following differences from calling pydantic's
|
|
68
|
+
`self.model_dump(by_alias=True)`:
|
|
69
|
+
|
|
70
|
+
* `None` is only added to the output dict for nullable fields that
|
|
71
|
+
were set at model initialization. Other fields with value `None`
|
|
72
|
+
are ignored.
|
|
73
|
+
"""
|
|
74
|
+
excluded_fields: Set[str] = set([
|
|
75
|
+
])
|
|
76
|
+
|
|
77
|
+
_dict = self.model_dump(
|
|
78
|
+
by_alias=True,
|
|
79
|
+
exclude=excluded_fields,
|
|
80
|
+
exclude_none=True,
|
|
81
|
+
)
|
|
82
|
+
return _dict
|
|
83
|
+
|
|
84
|
+
@classmethod
|
|
85
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
86
|
+
"""Create an instance of QuotedRefResultData from a dict"""
|
|
87
|
+
if obj is None:
|
|
88
|
+
return None
|
|
89
|
+
|
|
90
|
+
if not isinstance(obj, dict):
|
|
91
|
+
return cls.model_validate(obj)
|
|
92
|
+
|
|
93
|
+
_obj = cls.model_validate({
|
|
94
|
+
"__typename": obj.get("__typename"),
|
|
95
|
+
"rest_id": obj.get("rest_id")
|
|
96
|
+
})
|
|
97
|
+
return _obj
|
|
98
|
+
|
|
99
|
+
|
|
@@ -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, StrictStr
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class QuotedStatusPermalink(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
QuotedStatusPermalink
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
display: StrictStr
|
|
31
|
+
expanded: StrictStr
|
|
32
|
+
url: StrictStr
|
|
33
|
+
__properties: ClassVar[List[str]] = ["display", "expanded", "url"]
|
|
34
|
+
|
|
35
|
+
model_config = {
|
|
36
|
+
"populate_by_name": True,
|
|
37
|
+
"validate_assignment": True,
|
|
38
|
+
"protected_namespaces": (),
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def to_str(self) -> str:
|
|
43
|
+
"""Returns the string representation of the model using alias"""
|
|
44
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
45
|
+
|
|
46
|
+
def to_json(self) -> str:
|
|
47
|
+
"""Returns the JSON representation of the model using alias"""
|
|
48
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
49
|
+
return json.dumps(self.to_dict())
|
|
50
|
+
|
|
51
|
+
@classmethod
|
|
52
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
53
|
+
"""Create an instance of QuotedStatusPermalink from a JSON string"""
|
|
54
|
+
return cls.from_dict(json.loads(json_str))
|
|
55
|
+
|
|
56
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
57
|
+
"""Return the dictionary representation of the model using alias.
|
|
58
|
+
|
|
59
|
+
This has the following differences from calling pydantic's
|
|
60
|
+
`self.model_dump(by_alias=True)`:
|
|
61
|
+
|
|
62
|
+
* `None` is only added to the output dict for nullable fields that
|
|
63
|
+
were set at model initialization. Other fields with value `None`
|
|
64
|
+
are ignored.
|
|
65
|
+
"""
|
|
66
|
+
excluded_fields: Set[str] = set([
|
|
67
|
+
])
|
|
68
|
+
|
|
69
|
+
_dict = self.model_dump(
|
|
70
|
+
by_alias=True,
|
|
71
|
+
exclude=excluded_fields,
|
|
72
|
+
exclude_none=True,
|
|
73
|
+
)
|
|
74
|
+
return _dict
|
|
75
|
+
|
|
76
|
+
@classmethod
|
|
77
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
78
|
+
"""Create an instance of QuotedStatusPermalink from a dict"""
|
|
79
|
+
if obj is None:
|
|
80
|
+
return None
|
|
81
|
+
|
|
82
|
+
if not isinstance(obj, dict):
|
|
83
|
+
return cls.model_validate(obj)
|
|
84
|
+
|
|
85
|
+
_obj = cls.model_validate({
|
|
86
|
+
"display": obj.get("display"),
|
|
87
|
+
"expanded": obj.get("expanded"),
|
|
88
|
+
"url": obj.get("url")
|
|
89
|
+
})
|
|
90
|
+
return _obj
|
|
91
|
+
|
|
92
|
+
|
|
@@ -18,16 +18,12 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
from pydantic import BaseModel, Field, field_validator
|
|
22
22
|
from typing import Any, ClassVar, Dict, List
|
|
23
|
-
from pydantic import BaseModel, field_validator
|
|
24
|
-
from pydantic import Field
|
|
25
23
|
from typing_extensions import Annotated
|
|
26
24
|
from twitter_openapi_python_generated.models.retweet_legacy import RetweetLegacy
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
except ImportError:
|
|
30
|
-
from typing_extensions import Self
|
|
25
|
+
from typing import Optional, Set
|
|
26
|
+
from typing_extensions import Self
|
|
31
27
|
|
|
32
28
|
class Retweet(BaseModel):
|
|
33
29
|
"""
|
|
@@ -61,7 +57,7 @@ class Retweet(BaseModel):
|
|
|
61
57
|
return json.dumps(self.to_dict())
|
|
62
58
|
|
|
63
59
|
@classmethod
|
|
64
|
-
def from_json(cls, json_str: str) -> Self:
|
|
60
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
65
61
|
"""Create an instance of Retweet from a JSON string"""
|
|
66
62
|
return cls.from_dict(json.loads(json_str))
|
|
67
63
|
|
|
@@ -75,10 +71,12 @@ class Retweet(BaseModel):
|
|
|
75
71
|
were set at model initialization. Other fields with value `None`
|
|
76
72
|
are ignored.
|
|
77
73
|
"""
|
|
74
|
+
excluded_fields: Set[str] = set([
|
|
75
|
+
])
|
|
76
|
+
|
|
78
77
|
_dict = self.model_dump(
|
|
79
78
|
by_alias=True,
|
|
80
|
-
exclude=
|
|
81
|
-
},
|
|
79
|
+
exclude=excluded_fields,
|
|
82
80
|
exclude_none=True,
|
|
83
81
|
)
|
|
84
82
|
# override the default output from pydantic by calling `to_dict()` of legacy
|
|
@@ -87,7 +85,7 @@ class Retweet(BaseModel):
|
|
|
87
85
|
return _dict
|
|
88
86
|
|
|
89
87
|
@classmethod
|
|
90
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
88
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
91
89
|
"""Create an instance of Retweet from a dict"""
|
|
92
90
|
if obj is None:
|
|
93
91
|
return None
|
|
@@ -96,7 +94,7 @@ class Retweet(BaseModel):
|
|
|
96
94
|
return cls.model_validate(obj)
|
|
97
95
|
|
|
98
96
|
_obj = cls.model_validate({
|
|
99
|
-
"legacy": RetweetLegacy.from_dict(obj
|
|
97
|
+
"legacy": RetweetLegacy.from_dict(obj["legacy"]) if obj.get("legacy") is not None else None,
|
|
100
98
|
"rest_id": obj.get("rest_id")
|
|
101
99
|
})
|
|
102
100
|
return _obj
|
|
@@ -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
|
|
23
21
|
from pydantic import BaseModel, StrictStr
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
from typing_extensions import Self
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
28
25
|
|
|
29
26
|
class RetweetLegacy(BaseModel):
|
|
30
27
|
"""
|
|
@@ -50,7 +47,7 @@ class RetweetLegacy(BaseModel):
|
|
|
50
47
|
return json.dumps(self.to_dict())
|
|
51
48
|
|
|
52
49
|
@classmethod
|
|
53
|
-
def from_json(cls, json_str: str) -> Self:
|
|
50
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
54
51
|
"""Create an instance of RetweetLegacy from a JSON string"""
|
|
55
52
|
return cls.from_dict(json.loads(json_str))
|
|
56
53
|
|
|
@@ -64,16 +61,18 @@ class RetweetLegacy(BaseModel):
|
|
|
64
61
|
were set at model initialization. Other fields with value `None`
|
|
65
62
|
are ignored.
|
|
66
63
|
"""
|
|
64
|
+
excluded_fields: Set[str] = set([
|
|
65
|
+
])
|
|
66
|
+
|
|
67
67
|
_dict = self.model_dump(
|
|
68
68
|
by_alias=True,
|
|
69
|
-
exclude=
|
|
70
|
-
},
|
|
69
|
+
exclude=excluded_fields,
|
|
71
70
|
exclude_none=True,
|
|
72
71
|
)
|
|
73
72
|
return _dict
|
|
74
73
|
|
|
75
74
|
@classmethod
|
|
76
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
75
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
77
76
|
"""Create an instance of RetweetLegacy from a dict"""
|
|
78
77
|
if obj is None:
|
|
79
78
|
return None
|
|
@@ -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.search_timeline import SearchTimeline
|
|
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 SearchByRawQuery(BaseModel):
|
|
31
28
|
"""
|
|
@@ -51,7 +48,7 @@ class SearchByRawQuery(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 SearchByRawQuery from a JSON string"""
|
|
56
53
|
return cls.from_dict(json.loads(json_str))
|
|
57
54
|
|
|
@@ -65,10 +62,12 @@ class SearchByRawQuery(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 search_timeline
|
|
@@ -77,7 +76,7 @@ class SearchByRawQuery(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 SearchByRawQuery from a dict"""
|
|
82
81
|
if obj is None:
|
|
83
82
|
return None
|
|
@@ -86,7 +85,7 @@ class SearchByRawQuery(BaseModel):
|
|
|
86
85
|
return cls.model_validate(obj)
|
|
87
86
|
|
|
88
87
|
_obj = cls.model_validate({
|
|
89
|
-
"search_timeline": SearchTimeline.from_dict(obj
|
|
88
|
+
"search_timeline": SearchTimeline.from_dict(obj["search_timeline"]) if obj.get("search_timeline") is not None else None
|
|
90
89
|
})
|
|
91
90
|
return _obj
|
|
92
91
|
|
|
@@ -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.timeline import Timeline
|
|
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 SearchTimeline(BaseModel):
|
|
31
28
|
"""
|
|
@@ -51,7 +48,7 @@ class SearchTimeline(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 SearchTimeline from a JSON string"""
|
|
56
53
|
return cls.from_dict(json.loads(json_str))
|
|
57
54
|
|
|
@@ -65,10 +62,12 @@ class SearchTimeline(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 timeline
|
|
@@ -77,7 +76,7 @@ class SearchTimeline(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 SearchTimeline from a dict"""
|
|
82
81
|
if obj is None:
|
|
83
82
|
return None
|
|
@@ -86,7 +85,7 @@ class SearchTimeline(BaseModel):
|
|
|
86
85
|
return cls.model_validate(obj)
|
|
87
86
|
|
|
88
87
|
_obj = cls.model_validate({
|
|
89
|
-
"timeline": Timeline.from_dict(obj
|
|
88
|
+
"timeline": Timeline.from_dict(obj["timeline"]) if obj.get("timeline") is not None else None
|
|
90
89
|
})
|
|
91
90
|
return _obj
|
|
92
91
|
|
|
@@ -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.search_by_raw_query import SearchByRawQuery
|
|
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 SearchTimelineData(BaseModel):
|
|
31
28
|
"""
|
|
@@ -51,7 +48,7 @@ class SearchTimelineData(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 SearchTimelineData from a JSON string"""
|
|
56
53
|
return cls.from_dict(json.loads(json_str))
|
|
57
54
|
|
|
@@ -65,10 +62,12 @@ class SearchTimelineData(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 search_by_raw_query
|
|
@@ -77,7 +76,7 @@ class SearchTimelineData(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 SearchTimelineData from a dict"""
|
|
82
81
|
if obj is None:
|
|
83
82
|
return None
|
|
@@ -86,7 +85,7 @@ class SearchTimelineData(BaseModel):
|
|
|
86
85
|
return cls.model_validate(obj)
|
|
87
86
|
|
|
88
87
|
_obj = cls.model_validate({
|
|
89
|
-
"search_by_raw_query": SearchByRawQuery.from_dict(obj
|
|
88
|
+
"search_by_raw_query": SearchByRawQuery.from_dict(obj["search_by_raw_query"]) if obj.get("search_by_raw_query") is not None else None
|
|
90
89
|
})
|
|
91
90
|
return _obj
|
|
92
91
|
|
|
@@ -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.search_timeline_data import SearchTimelineData
|
|
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 SearchTimelineResponse(BaseModel):
|
|
31
28
|
"""
|
|
@@ -51,7 +48,7 @@ class SearchTimelineResponse(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 SearchTimelineResponse from a JSON string"""
|
|
56
53
|
return cls.from_dict(json.loads(json_str))
|
|
57
54
|
|
|
@@ -65,10 +62,12 @@ class SearchTimelineResponse(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 SearchTimelineResponse(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 SearchTimelineResponse from a dict"""
|
|
82
81
|
if obj is None:
|
|
83
82
|
return None
|
|
@@ -86,7 +85,7 @@ class SearchTimelineResponse(BaseModel):
|
|
|
86
85
|
return cls.model_validate(obj)
|
|
87
86
|
|
|
88
87
|
_obj = cls.model_validate({
|
|
89
|
-
"data": SearchTimelineData.from_dict(obj
|
|
88
|
+
"data": SearchTimelineData.from_dict(obj["data"]) if obj.get("data") is not None else None
|
|
90
89
|
})
|
|
91
90
|
return _obj
|
|
92
91
|
|
|
@@ -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, field_validator
|
|
22
22
|
from typing import Any, ClassVar, Dict, List
|
|
23
|
-
from pydantic import BaseModel, field_validator
|
|
24
|
-
from pydantic import Field
|
|
25
23
|
from typing_extensions import Annotated
|
|
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 SelfThread(BaseModel):
|
|
32
28
|
"""
|
|
@@ -59,7 +55,7 @@ class SelfThread(BaseModel):
|
|
|
59
55
|
return json.dumps(self.to_dict())
|
|
60
56
|
|
|
61
57
|
@classmethod
|
|
62
|
-
def from_json(cls, json_str: str) -> Self:
|
|
58
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
63
59
|
"""Create an instance of SelfThread from a JSON string"""
|
|
64
60
|
return cls.from_dict(json.loads(json_str))
|
|
65
61
|
|
|
@@ -73,16 +69,18 @@ class SelfThread(BaseModel):
|
|
|
73
69
|
were set at model initialization. Other fields with value `None`
|
|
74
70
|
are ignored.
|
|
75
71
|
"""
|
|
72
|
+
excluded_fields: Set[str] = set([
|
|
73
|
+
])
|
|
74
|
+
|
|
76
75
|
_dict = self.model_dump(
|
|
77
76
|
by_alias=True,
|
|
78
|
-
exclude=
|
|
79
|
-
},
|
|
77
|
+
exclude=excluded_fields,
|
|
80
78
|
exclude_none=True,
|
|
81
79
|
)
|
|
82
80
|
return _dict
|
|
83
81
|
|
|
84
82
|
@classmethod
|
|
85
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
83
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
86
84
|
"""Create an instance of SelfThread from a dict"""
|
|
87
85
|
if obj is None:
|
|
88
86
|
return None
|
|
@@ -18,18 +18,14 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
from pydantic import BaseModel, Field, StrictBool, StrictInt, StrictStr, field_validator
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
-
from pydantic import BaseModel, StrictBool, StrictInt, StrictStr, field_validator
|
|
24
|
-
from pydantic import Field
|
|
25
23
|
from typing_extensions import Annotated
|
|
26
24
|
from twitter_openapi_python_generated.models.communities_actions import CommunitiesActions
|
|
27
25
|
from twitter_openapi_python_generated.models.one_factor_login_eligibility import OneFactorLoginEligibility
|
|
28
26
|
from twitter_openapi_python_generated.models.user_features import UserFeatures
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
except ImportError:
|
|
32
|
-
from typing_extensions import Self
|
|
27
|
+
from typing import Optional, Set
|
|
28
|
+
from typing_extensions import Self
|
|
33
29
|
|
|
34
30
|
class Session(BaseModel):
|
|
35
31
|
"""
|
|
@@ -75,7 +71,7 @@ class Session(BaseModel):
|
|
|
75
71
|
@field_validator('super_follows_application_status')
|
|
76
72
|
def super_follows_application_status_validate_enum(cls, value):
|
|
77
73
|
"""Validates the enum"""
|
|
78
|
-
if value not in ('NotStarted'):
|
|
74
|
+
if value not in set(['NotStarted']):
|
|
79
75
|
raise ValueError("must be one of enum values ('NotStarted')")
|
|
80
76
|
return value
|
|
81
77
|
|
|
@@ -103,7 +99,7 @@ class Session(BaseModel):
|
|
|
103
99
|
return json.dumps(self.to_dict())
|
|
104
100
|
|
|
105
101
|
@classmethod
|
|
106
|
-
def from_json(cls, json_str: str) -> Self:
|
|
102
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
107
103
|
"""Create an instance of Session from a JSON string"""
|
|
108
104
|
return cls.from_dict(json.loads(json_str))
|
|
109
105
|
|
|
@@ -117,10 +113,12 @@ class Session(BaseModel):
|
|
|
117
113
|
were set at model initialization. Other fields with value `None`
|
|
118
114
|
are ignored.
|
|
119
115
|
"""
|
|
116
|
+
excluded_fields: Set[str] = set([
|
|
117
|
+
])
|
|
118
|
+
|
|
120
119
|
_dict = self.model_dump(
|
|
121
120
|
by_alias=True,
|
|
122
|
-
exclude=
|
|
123
|
-
},
|
|
121
|
+
exclude=excluded_fields,
|
|
124
122
|
exclude_none=True,
|
|
125
123
|
)
|
|
126
124
|
# override the default output from pydantic by calling `to_dict()` of communities_actions
|
|
@@ -135,7 +133,7 @@ class Session(BaseModel):
|
|
|
135
133
|
return _dict
|
|
136
134
|
|
|
137
135
|
@classmethod
|
|
138
|
-
def from_dict(cls, obj: Dict) -> Self:
|
|
136
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
139
137
|
"""Create an instance of Session from a dict"""
|
|
140
138
|
if obj is None:
|
|
141
139
|
return None
|
|
@@ -145,7 +143,7 @@ class Session(BaseModel):
|
|
|
145
143
|
|
|
146
144
|
_obj = cls.model_validate({
|
|
147
145
|
"SsoInitTokens": obj.get("SsoInitTokens"),
|
|
148
|
-
"communitiesActions": CommunitiesActions.from_dict(obj
|
|
146
|
+
"communitiesActions": CommunitiesActions.from_dict(obj["communitiesActions"]) if obj.get("communitiesActions") is not None else None,
|
|
149
147
|
"country": obj.get("country"),
|
|
150
148
|
"guestId": obj.get("guestId"),
|
|
151
149
|
"hasCommunityMemberships": obj.get("hasCommunityMemberships"),
|
|
@@ -153,10 +151,10 @@ class Session(BaseModel):
|
|
|
153
151
|
"isRestrictedSession": obj.get("isRestrictedSession"),
|
|
154
152
|
"isSuperFollowSubscriber": obj.get("isSuperFollowSubscriber"),
|
|
155
153
|
"language": obj.get("language"),
|
|
156
|
-
"oneFactorLoginEligibility": OneFactorLoginEligibility.from_dict(obj
|
|
154
|
+
"oneFactorLoginEligibility": OneFactorLoginEligibility.from_dict(obj["oneFactorLoginEligibility"]) if obj.get("oneFactorLoginEligibility") is not None else None,
|
|
157
155
|
"superFollowersCount": obj.get("superFollowersCount"),
|
|
158
156
|
"superFollowsApplicationStatus": obj.get("superFollowsApplicationStatus"),
|
|
159
|
-
"userFeatures": UserFeatures.from_dict(obj
|
|
157
|
+
"userFeatures": UserFeatures.from_dict(obj["userFeatures"]) if obj.get("userFeatures") is not None else None,
|
|
160
158
|
"user_id": obj.get("user_id")
|
|
161
159
|
})
|
|
162
160
|
return _obj
|