-
Notifications
You must be signed in to change notification settings - Fork 143
Expand file tree
/
Copy path__init__.py
More file actions
75 lines (66 loc) · 3.22 KB
/
__init__.py
File metadata and controls
75 lines (66 loc) · 3.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# This file was auto-generated by Fern from our API Definition.
# isort: skip_file
import typing
from importlib import import_module
if typing.TYPE_CHECKING:
from .article import Article
from .article_list_item import ArticleListItem
from .article_list_item_state import ArticleListItemState
from .article_search_highlights import ArticleSearchHighlights
from .article_search_highlights_highlighted_summary_item_item import (
ArticleSearchHighlightsHighlightedSummaryItemItem,
)
from .article_search_highlights_highlighted_summary_item_item_type import (
ArticleSearchHighlightsHighlightedSummaryItemItemType,
)
from .article_search_highlights_highlighted_title_item import ArticleSearchHighlightsHighlightedTitleItem
from .article_search_highlights_highlighted_title_item_type import ArticleSearchHighlightsHighlightedTitleItemType
from .article_search_response import ArticleSearchResponse
from .article_search_response_data import ArticleSearchResponseData
from .internal_article import InternalArticle
from .update_article_request_state import UpdateArticleRequestState
_dynamic_imports: typing.Dict[str, str] = {
"Article": ".article",
"ArticleListItem": ".article_list_item",
"ArticleListItemState": ".article_list_item_state",
"ArticleSearchHighlights": ".article_search_highlights",
"ArticleSearchHighlightsHighlightedSummaryItemItem": ".article_search_highlights_highlighted_summary_item_item",
"ArticleSearchHighlightsHighlightedSummaryItemItemType": ".article_search_highlights_highlighted_summary_item_item_type",
"ArticleSearchHighlightsHighlightedTitleItem": ".article_search_highlights_highlighted_title_item",
"ArticleSearchHighlightsHighlightedTitleItemType": ".article_search_highlights_highlighted_title_item_type",
"ArticleSearchResponse": ".article_search_response",
"ArticleSearchResponseData": ".article_search_response_data",
"InternalArticle": ".internal_article",
"UpdateArticleRequestState": ".update_article_request_state",
}
def __getattr__(attr_name: str) -> typing.Any:
module_name = _dynamic_imports.get(attr_name)
if module_name is None:
raise AttributeError(f"No {attr_name} found in _dynamic_imports for module name -> {__name__}")
try:
module = import_module(module_name, __package__)
if module_name == f".{attr_name}":
return module
else:
return getattr(module, attr_name)
except ImportError as e:
raise ImportError(f"Failed to import {attr_name} from {module_name}: {e}") from e
except AttributeError as e:
raise AttributeError(f"Failed to get {attr_name} from {module_name}: {e}") from e
def __dir__():
lazy_attrs = list(_dynamic_imports.keys())
return sorted(lazy_attrs)
__all__ = [
"Article",
"ArticleListItem",
"ArticleListItemState",
"ArticleSearchHighlights",
"ArticleSearchHighlightsHighlightedSummaryItemItem",
"ArticleSearchHighlightsHighlightedSummaryItemItemType",
"ArticleSearchHighlightsHighlightedTitleItem",
"ArticleSearchHighlightsHighlightedTitleItemType",
"ArticleSearchResponse",
"ArticleSearchResponseData",
"InternalArticle",
"UpdateArticleRequestState",
]