Исходный код raito.plugins.throttling.flag
from __future__ import annotations
from aiogram.dispatcher.flags import Flag, FlagDecorator
from .middleware import THROTTLING_MODE
__all__ = ("limiter",)
[документация]
def limiter(rate_limit: float, mode: THROTTLING_MODE = "user") -> FlagDecorator:
"""Attach a rate limit to the command handler.
This decorator sets a custom rate limit (in seconds) for a specific command handler.
:param rate_limit: Minimum delay between invokes (in seconds)
:param mode: Throttling key type: 'user', 'chat', or 'bot'
:return: Combined FlagDecorator
"""
data = {"rate_limit": rate_limit, "mode": mode}
return FlagDecorator(Flag("raito__limiter", value=data))