from aiogram import Bot, Dispatcher from aiogram.client.default import DefaultBotProperties from aiogram.enums import ParseMode from app.bot.handlers.start import router as start_router from app.bot.handlers.users import router as users_router from app.bot.handlers.subscription import router as subscription_router from app.bot.handlers.stats import router as stats_router from app.bot.middlewares import AdminMiddleware from app.settings import settings def create_dispatcher() -> Dispatcher: dp = Dispatcher() dp.message.middleware(AdminMiddleware()) dp.include_router(start_router) dp.include_router(users_router) dp.include_router(subscription_router) dp.include_router(stats_router) return dp def create_bot() -> Bot: return Bot( token=settings.bot_token, default=DefaultBotProperties(parse_mode=ParseMode.HTML), )