From c10f8282fca756f8f6bf54440c5db782056c9ac9 Mon Sep 17 00:00:00 2001 From: Oscar Date: Fri, 29 May 2026 17:53:06 +0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=8C=9F=20feat(file):=20=D0=94=D0=BE=D0=B1?= =?UTF-8?q?=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D1=8B=20=D0=BA=D0=BD=D0=BE=D0=BF?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=B2=20UI=20=D0=B4=D0=BB=D1=8F=20=D1=80=D0=B0?= =?UTF-8?q?=D0=B1=D0=BE=D1=82=D1=8B=20=D1=81=20=D1=84=D0=B8=D0=BB=D1=8C?= =?UTF-8?q?=D1=82=D1=80=D0=B0=D0=BC=D0=B8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/hh/bot-commands.ts | 3 ++- src/hh/ui.ts | 21 +++++++++++++++++---- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/src/hh/bot-commands.ts b/src/hh/bot-commands.ts index f670729..a644d37 100644 --- a/src/hh/bot-commands.ts +++ b/src/hh/bot-commands.ts @@ -1,6 +1,6 @@ import bot from '@bot' import prisma from '@prisma' -import { BTN, INFO_REPLY_KEYBOARD, LOGIN_REPLY_KEYBOARD, MAIN_REPLY_KEYBOARD, SETTINGS_REPLY_KEYBOARD } from './ui.js' +import { BTN, FILTERS_REPLY_KEYBOARD, INFO_REPLY_KEYBOARD, LOGIN_REPLY_KEYBOARD, MAIN_REPLY_KEYBOARD, SETTINGS_REPLY_KEYBOARD } from './ui.js' import { getState } from './state.js' import { doLogin, handleLogin } from './handlers/auth.js' import { handleApply } from './handlers/apply.js' @@ -23,6 +23,7 @@ const MESSAGE_HANDLERS: Partial> = { [BTN.MY_RESUME]: handleMyResume, [BTN.SKIPPED]: handleSkipped, [BTN.SETTINGS]: async chatId => { await bot.sendMessage(chatId, '⚙️ Настройки:', { reply_markup: SETTINGS_REPLY_KEYBOARD }) }, + [BTN.FILTERS]: async chatId => { await bot.sendMessage(chatId, '🔎 Фильтры:', { reply_markup: FILTERS_REPLY_KEYBOARD }) }, [BTN.INFO]: async chatId => { await bot.sendMessage(chatId, 'ℹ️ Информация:', { reply_markup: INFO_REPLY_KEYBOARD }) }, [BTN.BACK]: async chatId => { await bot.sendMessage(chatId, '🤖 HH Auto-Apply', { reply_markup: MAIN_REPLY_KEYBOARD }) }, } diff --git a/src/hh/ui.ts b/src/hh/ui.ts index a92f826..1f09797 100644 --- a/src/hh/ui.ts +++ b/src/hh/ui.ts @@ -4,6 +4,8 @@ export const BTN = { APPLY: '🚀 Откликнуться', STATUS: '⚙️ Статус', QUERY: '🔍 Изменить запрос', + EXCLUSIONS: '🚫 Слова исключения', + REGION: '🌍 Регион', MAX: '🔢 Макс. откликов', AUTO_TOGGLE: '⏰ Авто', LOGIN: '🔑 Войти на hh.ru', @@ -11,6 +13,7 @@ export const BTN = { MY_RESUME: '📋 Моё резюме', SKIPPED: '🚫 Проблемные вакансии', SETTINGS: '⚙️ Настройки', + FILTERS: '🔎 Фильтры', INFO: 'ℹ️ Информация', BACK: '◀️ Назад', PROMPT: '📝 Промт', @@ -24,7 +27,7 @@ export const LOGIN_REPLY_KEYBOARD = { export const MAIN_REPLY_KEYBOARD = { keyboard: [ - [{ text: BTN.APPLY }], + [{ text: BTN.APPLY }, { text: BTN.FILTERS }], [{ text: BTN.SETTINGS }, { text: BTN.INFO }], ], resize_keyboard: true, @@ -33,9 +36,19 @@ export const MAIN_REPLY_KEYBOARD = { export const SETTINGS_REPLY_KEYBOARD = { keyboard: [ - [{ text: BTN.MAX }, { text: BTN.QUERY }], - [{ text: BTN.AUTO_TOGGLE }, { text: BTN.RESUME_LIST }], - [{ text: BTN.PROMPT }, { text: BTN.LOGIN }], + [{ text: BTN.MAX }, { text: BTN.AUTO_TOGGLE }], + [{ text: BTN.RESUME_LIST }, { text: BTN.PROMPT }], + [{ text: BTN.LOGIN }], + [{ text: BTN.BACK }], + ], + resize_keyboard: true, + persistent: true, +} + +export const FILTERS_REPLY_KEYBOARD = { + keyboard: [ + [{ text: BTN.QUERY }], + [{ text: BTN.EXCLUSIONS }, { text: BTN.REGION }], [{ text: BTN.BACK }], ], resize_keyboard: true,