Files
AnyMusicBot/bot/filters/search.py
2024-11-02 00:10:24 +02:00

25 lines
833 B
Python

from aiogram.filters import BaseFilter
from aiogram.types import InlineQuery
class ServiceSearchFilter(BaseFilter):
def __init__(self, service_letter: str):
self.service_letter = f"{service_letter}:"
async def __call__(self, inline_query: InlineQuery):
return (
inline_query.query.startswith(self.service_letter)
and inline_query.query != self.service_letter
)
class ServiceSearchMultiletterFilter(BaseFilter):
def __init__(self, service_lettes: list[str]):
self.service_letter = [f"{letter}:" for letter in service_lettes]
async def __call__(self, inline_query: InlineQuery):
return (
any(inline_query.query.startswith(letter) for letter in self.service_letter)
and inline_query.query not in self.service_letter
)