|
1 | 1 | # -*- coding: utf-8 -*- |
2 | | -from datetime import datetime |
| 2 | +from __future__ import annotations |
| 3 | + |
3 | 4 | import os |
| 5 | +from datetime import datetime |
4 | 6 | from functools import cached_property |
5 | | -from typing import Optional, Union |
| 7 | +from typing import TYPE_CHECKING, Optional, Union |
6 | 8 | from urllib.parse import urlencode |
7 | 9 | from xml.etree import ElementTree |
8 | | -from xml.etree.ElementTree import Element |
9 | 10 |
|
10 | 11 | import requests |
| 12 | +from requests.status_codes import _codes as codes |
11 | 13 |
|
12 | | -from plexapi import BASE_HEADERS, CONFIG, TIMEOUT, log, logfilter |
| 14 | +# Need these imports to populate utils.PLEXOBJECTS |
| 15 | +from plexapi import BASE_HEADERS, CONFIG, TIMEOUT |
| 16 | +from plexapi import audio as _audio # noqa: F401 |
| 17 | +from plexapi import collection as _collection # noqa: F401 |
| 18 | +from plexapi import log, logfilter |
| 19 | +from plexapi import media as _media # noqa: F401 |
| 20 | +from plexapi import photo as _photo # noqa: F401 |
| 21 | +from plexapi import playlist as _playlist # noqa: F401 |
13 | 22 | from plexapi import utils |
| 23 | +from plexapi import video as _video # noqa: F401 |
14 | 24 | from plexapi.alert import AlertListener |
15 | 25 | from plexapi.base import PlexObject |
16 | 26 | from plexapi.client import PlexClient |
17 | 27 | from plexapi.collection import Collection |
18 | 28 | from plexapi.exceptions import BadRequest, NotFound, Unauthorized |
19 | | -from plexapi.library import Hub, Library, Path, File |
| 29 | +from plexapi.library import File, Hub, Library, Path |
20 | 30 | from plexapi.media import Conversion, Optimized |
21 | 31 | from plexapi.playlist import Playlist |
22 | 32 | from plexapi.playqueue import PlayQueue |
23 | 33 | from plexapi.settings import Settings |
24 | 34 | from plexapi.utils import deprecated |
25 | | -from requests.status_codes import _codes as codes |
26 | 35 |
|
27 | | -# Need these imports to populate utils.PLEXOBJECTS |
28 | | -from plexapi import audio as _audio # noqa: F401 |
29 | | -from plexapi import collection as _collection # noqa: F401 |
30 | | -from plexapi import media as _media # noqa: F401 |
31 | | -from plexapi import photo as _photo # noqa: F401 |
32 | | -from plexapi import playlist as _playlist # noqa: F401 |
33 | | -from plexapi import video as _video # noqa: F401 |
| 36 | +if TYPE_CHECKING: |
| 37 | + from xml.etree.ElementTree import Element |
34 | 38 |
|
35 | 39 |
|
36 | 40 | class PlexServer(PlexObject): |
|
0 commit comments