28 lines
1013 B
TypeScript
28 lines
1013 B
TypeScript
|
|
import { MyContext } from "../types/myContext";
|
||
|
|
import { manageMenuActions } from "./actions/manageMenuActions";
|
||
|
|
import { qrCodeActions } from "./actions/qrCodeActions";
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Обработка callback_query для управления QR-кодами
|
||
|
|
*/
|
||
|
|
export async function callbackQueryHandler(ctx: MyContext) {
|
||
|
|
const data = ctx.callbackQuery?.data;
|
||
|
|
|
||
|
|
if (!data) return; // Игнорируем пустые callback queries
|
||
|
|
|
||
|
|
if (
|
||
|
|
data.startsWith("manage:info:") ||
|
||
|
|
data.startsWith("manage:show:") ||
|
||
|
|
data.startsWith("manage:delete:")
|
||
|
|
) {
|
||
|
|
// Обработка действий с QR-кодами (информация, показать, удалить)
|
||
|
|
await qrCodeActions(ctx);
|
||
|
|
} else if (data.startsWith("manage:")) {
|
||
|
|
// Обработка выбора QR-кода
|
||
|
|
await manageMenuActions(ctx);
|
||
|
|
} else {
|
||
|
|
// Ответ на неизвестные callback queries
|
||
|
|
await ctx.answerCallbackQuery({ text: "Неизвестное действие." });
|
||
|
|
}
|
||
|
|
}
|