Прочие утилиты¶
Payload¶
Кодирование/декодирование payload для deep link.
encode_payload(payload: str, encoder: Callable | None = None) -> str
decode_payload(payload: str, decoder: Callable | None = None) -> str
По умолчанию используется Base64url. Можно передать кастомные encoder/decoder.
Token Validation¶
validate_token(token: str) -> None # Raises TokenValidationError
class TokenValidationError(Exception): ...
Mixins¶
DataMixin¶
Dict-подобный интерфейс:
ContextInstanceMixin[T]¶
Хранение экземпляра через contextvars:
class ContextInstanceMixin(Generic[T]):
@classmethod
def get_current(cls) -> T | None
@classmethod
def set_current(cls, value: T) -> Token
Serialization¶
deserialize_max_object(obj) -> tuple[dict, list[InputFile]]
deserialize_max_object_to_python(obj) -> dict
MagicFilter¶
class MagicFilter(magic_filter.MagicFilter):
def as_(self, name: str) -> ... # Оборачивает результат с именем
Используется для создания глобального F:
Исходные файлы¶
maxgram/utils/payload.pymaxgram/utils/token.pymaxgram/utils/mixins.pymaxgram/utils/serialization.pymaxgram/utils/magic_filter.py