Files
AnyMusicBot/bot/filters/search.py
2023-11-13 23:08:58 +02:00

26 lines
869 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
)