mirror of
https://github.com/zulip/zulip.git
synced 2025-11-05 06:23:38 +00:00
A subset of the diff generated by pyupgrade --py36-plus --keep-percent-format. Signed-off-by: Anders Kaseorg <anders@zulip.com>
38 lines
1.3 KiB
Python
38 lines
1.3 KiB
Python
from typing import TypeVar, Callable, Optional, List, Dict, Union, Tuple, Any
|
|
from typing_extensions import TypedDict
|
|
from django.http import HttpResponse
|
|
|
|
ViewFuncT = TypeVar('ViewFuncT', bound=Callable[..., HttpResponse])
|
|
|
|
# See zerver/lib/validator.py for more details of Validators,
|
|
# including many examples
|
|
Validator = Callable[[str, object], Optional[str]]
|
|
ExtendedValidator = Callable[[str, str, object], Optional[str]]
|
|
RealmUserValidator = Callable[[int, List[int], bool], Optional[str]]
|
|
|
|
ProfileDataElement = TypedDict('ProfileDataElement', {
|
|
'id': int,
|
|
'name': str,
|
|
'type': int,
|
|
'hint': Optional[str],
|
|
'field_data': Optional[str],
|
|
'order': int,
|
|
'value': str,
|
|
'rendered_value': Optional[str],
|
|
}, total=False) # TODO: Can we remove this requirement?
|
|
ProfileData = List[ProfileDataElement]
|
|
|
|
FieldElement = Tuple[int, str, Validator, Callable[[Any], Any], str]
|
|
ExtendedFieldElement = Tuple[int, str, ExtendedValidator, Callable[[Any], Any], str]
|
|
UserFieldElement = Tuple[int, str, RealmUserValidator, Callable[[Any], Any], str]
|
|
|
|
ProfileFieldData = Dict[str, Union[Dict[str, str], str]]
|
|
|
|
class UserDisplayRecipient(TypedDict):
|
|
email: str
|
|
full_name: str
|
|
short_name: str
|
|
id: int
|
|
is_mirror_dummy: bool
|
|
DisplayRecipientT = Union[str, List[UserDisplayRecipient]]
|